Asp.net
返回項目,Json(item) 和 Ok(item) 之間的 IHttpActionResult 區別
在 ASP.NET WebApi 2 中,以下內容有什麼區別:
public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return result; } public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return Json(result); } public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return Ok(result); }
此程式碼返回
result不會編譯,因為result沒有實現IHttpActionResult……public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return result; }返回
Json()總是返回 HTTP 200 和 JSON 格式的結果,無論傳入請求的 Accept 標頭中的格式是什麼。public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return Json(result); }返回
Ok()返回 HTTP 200,但結果將根據 Accept 請求標頭中指定的內容進行格式化。public <IHttpActionResult> GetItem(Guid id) { // ... code ..., Item result = .... return Ok(result); }