ASP.NET Core MVC配置與JSON序列化
MVC配置
在ConfigureServices方法中可以呼叫AddMvc(options)設定options,其中有個配置是options.RespectBrowserAcceptHeader = true。
它有如下作用:預設情況下,後臺會忽略瀏覽器傳來的AcceptHeader並返回應用程式預設的格式(對於Api而言就是JSON),這樣一來,當使用不同的瀏覽器消費API時會獲得一樣的體驗。
而如果你希望你的應用程式有限考慮瀏覽器的Accept頭,你就可以RespectBrowserAcceptHeader設定為true。
這裡的Accept頭指的就是Http協議中的Accept頭。
例如: accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
參考:ASP.NET Core 中文文件 第四章 MVC(2.3)格式化響應資料
JSON序列化
當專案需要採用前後端分離的方式就需要考慮到JSON格式的問題了,ASP.NET Core已經為我們考好了。
在ConfigureService方法中呼叫AddMvc().AddJsonOptions()方法就可以對JSON格式進行配置。
例如:
services.AddMvc().AddJsonOptions(options => {
//設定不使用駝峰格式處理,由後臺欄位確定大小寫
options.SerializerSettings.ContractResolver = new DefaultContractResolver();
//
options.SerializerSettings.NullValueHandling = NullValueHandling.Ignore;
});