【问题标题】:Does MarkLogic search.search in server-side JavaScript support JSON options?服务器端 JavaScript 中的 MarkLogic search.search 是否支持 JSON 选项?
【发布时间】:2019-03-25 12:21:00
【问题描述】:

MarkLogic 文档指出,对于“选定的客户端 API,例如 REST 客户端 API”,搜索选项可以用 JSON 表示:

一组查询选项具有以下结构。您只能将 JSON 表单与选定的客户端 API 一起使用,例如 REST 客户端 API。

参考:https://docs.marklogic.com/guide/search-dev/appendixa#id_94988

我猜这不包括服务器端 JavaScript 中的 search.search 函数?因为像search.search('apple', {...}) 这样的东西会导致Invalid coercion: object-node{...} as element(search:options) 错误。

这有点奇怪,因为许多其他 MarkLogic JavaScript 函数都支持 JSON(或 JS 对象)作为选项参数。我错过了什么吗?

【问题讨论】:

  • 您指向的是旧的 MarkLogic 文档(适用于 v7)。您使用的是哪个版本的 MarkLogic?
  • 谢谢,@grtjn。没有意识到我在引用过时的文档。我已经更新了我的问题。我使用的是第 9 版。

标签: marklogic


【解决方案1】:

REST API 支持 XML 查询选项和搜索 API 接受的结构化查询的 JSON 等效项。

文档显示了查询选项和结构化查询的 XML 和 JSON 序列化:

http://docs.marklogic.com/guide/search-dev/appendixa#id_94988

http://docs.marklogic.com/guide/search-dev/structured-query#id_85307

顺便说一句,如果你想在 Server-Side JavaScript 中搜索,看看 JSearch:

http://docs.marklogic.com/guide/search-dev/javascript

http://docs.marklogic.com/js/jsearch

JSearch 设计用于服务器端 JavaScript(其中 Search API 设计用于 XQuery)。

希望对您有所帮助,

【讨论】:

  • 谢谢!目前我正在使用 sjs 开发搜索查询,然后将通过 REST API 使用。但我肯定会考虑将 JSearch 用于未来的用例。
猜你喜欢
  • 2015-07-10
  • 1970-01-01
  • 2018-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-13
  • 2010-11-21
相关资源
最近更新 更多