Xquery 用于目录查询的Marklogic Rest API

Xquery 用于目录查询的Marklogic Rest API,xquery,marklogic,marklogic-8,Xquery,Marklogic,Marklogic 8,我有下面的XQuery,用于获取目录的文档 xquery version "1.0-ml"; cts:search(fn:collection(), cts:directory-query("/Path/To/Docs/", "infinity")) 现在,我需要将其转换为REST调用,但根据本页上的文档,我似乎无法破解它 更新: 使用Jersey REST API,它尝试了这一点,但得到了406个错误 String query = "{\"queries\":[ {\"director

我有下面的XQuery,用于获取目录的文档

xquery version "1.0-ml";

cts:search(fn:collection(), cts:directory-query("/Path/To/Docs/", "infinity"))
现在,我需要将其转换为REST调用,但根据本页上的文档,我似乎无法破解它

更新:

使用Jersey REST API,它尝试了这一点,但得到了406个错误

String query =  "{\"queries\":[ {\"directory-query\":{\"uri\":[\"/Path/to/Docs/\"]},\"infinite\":true} ]}";

String encodedQuery = URLEncoder.encode(query, "UTF-8");
WebTarget target = searchWebTarget.queryParam("structuredQuery", encodedQuery);

final Response response = target.request().get();

有什么想法吗?

按目录约束是直接在搜索API上的查询参数。不需要其他符号


请参阅此处的文档:

正如David所说,您不需要为此目的使用结构化查询,但如果您将来需要:

我相信您最初的问题是,这不是一个格式良好的结构化查询:

{\"queries\":[ {\"directory-query\":{\"uri\":[\"/Path/to/Docs/\"]},\"infinite\":true} ]}
您缺少顶级“查询”属性。您可以在此处找到使用目录查询的完整格式结构化查询的示例:

另外,您可能已经知道了,但是RESTAPI之上有一个本机JavaAPI。您可以在此处了解有关此API的更多信息:


您能详细说明您目前尝试的内容吗?更新了我在发送此commadd https://[marklogic host]时在此处找到的我目前尝试的内容:8801/v1/search?collection=&directory=/Path/to/Doc/I收到响应,但返回内容的uri不是以/Path/to/Doc/开头的,而是完全不同的内容。您可以提供一个与上述xquery匹配的示例吗?对于上面的Xquery,RESTURL是什么样子的?通过对目录路径进行url编码来解决。谢谢