今天当我尝试在web api中重定向操作时,我注意到301重定向有两个值:
价值1:
var response = Request.CreateResponse(HttpStatusCode.MovedPermanently);
response.Headers.Location = new Uri("http://www.example.com");
return response;
价值2:
var response = Request.CreateResponse(HttpStatusCode.Moved);
response.Headers.Location = new Uri("http://www.example.com");
return response;
现在我的问题是哪个更好,HttpStatusCode
的两个值之间有什么不同?
答案 0 :(得分:2)
根据MSDN文件:
被移动:强> 相当于HTTP状态301.
已移动表示请求的信息已移至Location头中指定的URI。收到此状态时的默认操作是遵循与响应关联的Location标头。
当原始请求方法为POST时,重定向的请求将使用GET方法。
<强> MovedPermanently:强> 相当于HTTP状态301.
MovedPermanently表示请求的信息已移至Location头中指定的URI。
收到此状态时的默认操作是遵循与响应关联的位置标题。