我使用基于 REST API 的系统,其中有些请求需要很长时间才能完成。我想给用户一个取消请求的选项。
最佳答案
首先,支持
POST /requests
这将返回对请求状态的引用
{
"id": 1234,
"self"": "/requests/1234"
"status": "Running"
}
然后添加对
的支持PUT /requests/1234
{
"status": "Canceled:"
}
如果请求尚未完成,这将允许客户取消请求。如果请求是创建一些其他类型的资源,那么不要使用 POST/requests
,而是执行 POST/myResource
,但仍然会返回带有指向/requests 指针的状态对象在响应中。
然后客户端可以轮询 /requests
以查看请求何时完成。
关于java - 如何取消 REST api 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31833178/