Azure虚拟机DELETE API返回HTTP 204而不是404

时间:2018-12-23 04:50:34

标签: azure azure-virtual-machine

我正在使用以下API: https://docs.microsoft.com/en-us/rest/api/compute/virtualmachines/delete

尝试删除不存在的VM 时,系统将给出以下响应:

响应码:204

页眉- 缓存控制:无缓存 到期:-1 语用:无缓存 x-ms-correlation-request-id:0bda7be7-6f2a-4202-9565-04d16c210606 x-ms-ratelimit剩余订阅删除:14996 x-ms-request-id:0bda7be7-6f2a-4202-9565-04d16c210606 x-ms-routing-request-id:WESTINDIA:20181223T044056Z:0bda7be7-6f2a-4202-9565-04d16c210606

正文:null

理想情况下是否应返回HTTP 404?

1 个答案:

答案 0 :(得分:3)

我建议您看看Track asynchronous Azure operations,以便更好地了解使用 Azure 的管理API时的执行流程。

据我了解,您得到的是 204 ,因为该操作无法立即完成。如果要检查操作的状态和最终结果,则需要使用上面链接中描述的方法进行查询。

更新

尝试对我的一个订阅进行操作后,查看门户网站的活动日志,该操作似乎被记录为“成功”。恐怕知道VM是否存在的唯一方法是尝试查询其信息。

我还认为,在以前版本的API中,如果未找到VM,则会返回404,但是由于某种原因,它已被更改(也许是因为如果找不到它,则它已经处于“已删除”状态“)。

希望有帮助!