【发布时间】:2020-03-02 07:14:01
【问题描述】:
当我尝试使用 POST 方法从 REST API 运行数据中心流时,我收到了错误的请求错误。我正在使用邮递员来运行以下流程。我已经按照文档https://docs.marklogic.com/datahub/flows/run-flow-using-rest-client-api.html
但我可以使用 gradle 任务运行流程。谁能帮帮我?
http://localhost:8230/v1/resources/ml:runFlow?rs:flow-name=flow_name&rs:step=1
我收到以下错误
{ “错误响应”:{ “状态代码”:400, “状态”:“错误请求”, "messageCode": "XDMP-ARGTYPE", "message": "XDMP-ARGTYPE: cts.query(\"cts.andQuery([cts.collectionQuery(\\"test_coll"\\"), ...\") -- arg1 不是节点类型" }
【问题讨论】:
-
cts.andQuery 部分来自哪里? cts.query 不接受引用的查询..
-
它是流程的一部分。已使用快速启动创建流程。请注意,此流程使用 gradle hubRunFlow 执行良好。只有当我尝试从 REST API 端点运行流程时,我才会遇到这个问题。
-
我相信您遇到了这个错误,因为没有提供文档的 URI 给您希望在选项对象中运行流程。你能确认你没有传递像
&rs:options={ "uris" : [ "comma-separated","uris","of","records","to","process" ] }这样的东西吗?如果是这种情况,我将提供更详细的答案,说明为什么需要选项中的这些 URI,并建议提交 GitHub 问题以在这种情况下抛出更好的错误。 -
谢谢'justdewit'。我刚刚发现我没有传递 URI 及其要求。我认为 URI 是一个可选参数。是的,如果我们得到一个更好的错误,那就太好了,并且文档可以用一些示例或所需参数的清晰度进行更新。再次感谢你:)