Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如果请求/确认/轮询失败,我应该使用什么HTTP响应_Asp.net_Asp.net Web Api - Fatal编程技术网

Asp.net 如果请求/确认/轮询失败,我应该使用什么HTTP响应

Asp.net 如果请求/确认/轮询失败,我应该使用什么HTTP响应,asp.net,asp.net-web-api,Asp.net,Asp.net Web Api,我有一个类似的场景。因此,客户机发布数据,我将状态发送回Accepted。然后,后台进程负责创建资源 然后,客户端可以转到“已接受响应”的位置并轮询状态 如果后台进程失败,我想通知客户,我应该返回什么状态码?HTTP 500没有那么好,因为如果对状态路由的调用由于任何其他原因失败,并且客户端无法区分两者之间的区别,那么HTTP 500也可能发生 另外,当资源的创建仍在进行中时,返回的最佳代码是什么?200行吗 有什么建议吗?我定义了一个解决这个问题的方法。这是一份自述文件 状态文档可能如下所示

我有一个类似的场景。因此,客户机发布数据,我将状态发送回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"}
        }
    }
}