code-prettify

2015年7月16日 星期四

ASP.NET API 加入 JSONP 支援

使用 Nuget 安裝 WebApiContrib.Formatting.Jsonp 套件

在 Global.asax 的 Application_Start 函式中加入

GlobalConfiguration.Configuration.Formatters.Insert(0, new JsonpMediaTypeFormatter(new JsonMediaTypeFormatter()));

在 App_Start/WebApiConfig.cs 的 Register 修改 Route 如下

config.Routes.MapHttpRoute(
   name: "DefaultApi",
   routeTemplate: "api/{controller}/{id}/{format}",
   defaults: new
   {
       id = RouteParameter.Optional,
       format = RouteParameter.Optional
   }
);

這樣就可以支援 Jsonp!

註:會自動判斷 Headers 的 Accept 參數,如果是 application/json 則會回傳 json 格式

資料來源:
WebApiContrib.Formatting.Jsonp
https://github.com/WebApiContrib/WebApiContrib.Formatting.Jsonp

沒有留言:

張貼留言