我正在用C#编写一个Web应用程序。一个功能是服务器将发送推送通知,为客户提供进行一轮工作的机会。客户可以接受或拒绝这项工作。
但是,如果客户端响应时间过长,服务器会将此视为隐式拒绝,并向其他人提供一系列工作。
以下是服务器上控制器端点的摘录,客户端可以将其发布为接受当前轮次
public HttpResponseMessage PostAcceptRound(PersonData accepter){
Round currentRound = repo.GetCurrentRound();
if(currentRound.offeredTo.id == accepter.id){
repo.RoundAccepted(currentRound.id);
return Request.CreateResponse<String>(HttpStatusCode.OK, "Round has been accepted");
}
else{
//return appropriate response
}
}
我的问题是:客户花费太长时间接受的适当回应是什么?
我最初的反应是我应该发送一个&#34; BadRequest&#34;错误回应。然而,并不是一个拒绝迟到的人是一个糟糕的请求或一些意外的事情。实际上,似乎接受太晚将会出现在使用此应用程序时经常发生的情况。
答案 0 :(得分:1)
408 =&#39;请求超时&#39;在我看来是最合适的。
http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html