http://localhost:8529/_api/query/225 - 语法正确吗?

http://localhost:8529/_api/query/225 - syntax correct?

我第一次尝试使用新的 API 功能中止长 运行 查询(ID 为 225)。但我无法让它杀死请求。 API 请求答案

   {"error":true,"code":404,"errorNum":404,"errorMessage":"not found"}

尽管查询仍然是 运行。

[
  {
    "id": "225",
    "query": [SNIP]
  }
]

我做错了什么? 提前致谢...

只能猜测,因为问题不包含有关实际发布的内容和使用哪种 HTTP 方法的完整信息。

我的猜测是您在尝试终止查询时使用了 HTTP GET 而不是 HTTP DELETE。所以 URL 可能是正确的,但 HTTP 方法不是。在这种情况下,您还会收到 404 错误。

有两种方法可以终止 运行 查询:

  • 使用 ArangoShell

    首先,需要确定查询id。这可以通过以下方式实现: require("org/arangodb/aql/queries").current();

    使用返回的 id 值,终止查询的命令是: require("org/arangodb/aql/queries").kill(id);

  • 使用 HTTP

    当查询已知时,可以在 HTTP DELETE 请求中使用它: curl -X DELETE http://127.0.0.1:8529/_api/query/id

    同样,id 需要是查询的真实 ID。