服务器端JavaScript中的MarkLogic search.search是否支持JSON选项?

时间:2019-03-25 12:21:00

标签: marklogic

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参数。我错过了什么吗?

1 个答案:

答案 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)。

希望有帮助,