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。
我第一次尝试使用新的 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。