MarkLogic文档指出,可以使用JSON表示“选定的客户端API,例如REST客户端API”的搜索选项:
一组查询选项具有以下结构。您只能将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 Object)作为options参数。我错过了什么吗?
答案 0 :(得分:1)
REST API支持与Search API接受的XML查询选项和结构化查询等效的JSON。
文档同时显示了查询选项和结构化查询的XML和JSON序列化:
http://docs.marklogic.com/guide/search-dev/appendixa#id_94988
http://docs.marklogic.com/guide/search-dev/structured-query#id_85307
如果要在服务器端JavaScript中搜索,请看一下JSearch:
http://docs.marklogic.com/guide/search-dev/javascript
http://docs.marklogic.com/js/jsearch
JSearch设计用于服务器端JavaScript(其中Search API设计用于XQuery)。
希望有帮助,