FromBody JSON的概念是在Web API中使用JSON格式的數據從請求正文中獲取數據。其實,HTTP請求是支持Request Body的。在請求中,請求正文是一個JSON格式的字符串,從中提取數據,然后在應用程序中使用非常簡單。
FromBody JSON的作用是檢查請求頭中Content-Type是否是application/json和Content-Length是否不為空(保證請求中有JSON格式的字符串)。如果滿足條件,Web API會自動將請求正文的JSON字符串序列化到非強類型參數(值類型或類類型)對象中。
在下面的示例中,我們將演示如何使用FromBody JSON檢索請求正文中的JSON數據,執行操作并返回一個JSON響應:
public class Employee { public string Name { get; set; } public string Email { get; set; } } [HttpPost] public HttpResponseMessage AddEmployee([FromBody]Employee employee) { if (employee != null) { //Do something with employee object //Return JSON response return Request.CreateResponse(HttpStatusCode.OK, "Employee was successfully added!"); } else { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Invalid employee data!"); } }
在該示例中,我們定義了一個名為Employee的類,并定義了Name和Email屬性。該類用于從請求正文中檢索JSON格式的數據。我們還定義了一個具有[HttpPost]特性的Web API方法,該方法從正文中檢索JSON數據并執行操作。如果傳遞的Employee對象不為空,則執行操作,返回JSON響應。否則,返回“Invalid employee data”的錯誤響應。
在此示例中,JSON數據必須符合以下格式:
{ "Name": "John Smith", "Email": "john.smith@example.com" }
在執行操作之前,請確保符合您的Web API應用程序的JSON格式要求。FromBody JSON是一個非常實用的功能,它可以幫助您輕松地在Web API應用程序中檢索和操作JSON格式的數據。