Asp.net 如果请求/确认/轮询失败,我应该使用什么HTTP响应
我有一个类似的场景。因此,客户机发布数据,我将状态发送回Accepted。然后,后台进程负责创建资源 然后,客户端可以转到“已接受响应”的位置并轮询状态 如果后台进程失败,我想通知客户,我应该返回什么状态码?HTTP 500没有那么好,因为如果对状态路由的调用由于任何其他原因失败,并且客户端无法区分两者之间的区别,那么HTTP 500也可能发生 另外,当资源的创建仍在进行中时,返回的最佳代码是什么?200行吗 有什么建议吗?我定义了一个解决这个问题的方法。这是一份自述文件Asp.net 如果请求/确认/轮询失败,我应该使用什么HTTP响应,asp.net,asp.net-web-api,Asp.net,Asp.net Web Api,我有一个类似的场景。因此,客户机发布数据,我将状态发送回Accepted。然后,后台进程负责创建资源 然后,客户端可以转到“已接受响应”的位置并轮询状态 如果后台进程失败,我想通知客户,我应该返回什么状态码?HTTP 500没有那么好,因为如果对状态路由的调用由于任何其他原因失败,并且客户端无法区分两者之间的区别,那么HTTP 500也可能发生 另外,当资源的创建仍在进行中时,返回的最佳代码是什么?200行吗 有什么建议吗?我定义了一个解决这个问题的方法。这是一份自述文件 状态文档可能如下所示
状态文档可能如下所示:
<status state="busy" progress="2/75" message="This is a message"/>
与此类似的JSON是
{ "status" : {
"state" : "ok",
"message" : "Finished generating report",
"links" : {
"related" : { "href" : "http://example.org/report/99/output"}
}
}
}
JSON格式的links对象的语法遵循HAL的约定,只是links对象没有前导下划线。下划线是不必要的,因为这种媒体类型鼓励嵌入任意附加内容,因此不应发生命名冲突
该规范不禁止对内容进行扩展,但是它没有为超出基础JSON/XML格式约束的扩展定义任何规则
媒体类型标识符
目的是将本规范作为建议提交给IANA,以便使用以下标识符进行注册:
- 应用程序/状态+xml
- 应用程序/状态+json
{ "status" : {
"state" : "ok",
"message" : "Finished generating report",
"links" : {
"related" : { "href" : "http://example.org/report/99/output"}
}
}
}