ASP.NET Web API 通過參數控制返回類型(JSON|XML)


一個很實用的技巧,可以在訪問web api服務的時候指定返回數據的格式類型,比如 json 或者 xml。

因為 web api 默認返回的是XML格式,但是現在json 比較流行,同時網上也有其他的全局方式的設置。

比如:

在 Global 文件中設置,首先清除其他所有的formatters,然后只保留JsonMediaTypeFormatter。

configuration.Formatters.Clear();
configuration.Formatters.Add(new JsonMediaTypeFormatter());

 

 

實現步驟:

1、在 WebApiConfig 文件中引用:System.Net.Http.Formatting

2、修改 WebApiConfig 代碼

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http.Formatting; 
using System.Web.Http;

namespace Caixie.Dispatcher
{
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // Web API 配置和服務
            config.Formatters.JsonFormatter.AddQueryStringMapping("$format", "json", "application/json");
            config.Formatters.XmlFormatter.AddQueryStringMapping("$format", "xml", "application/xml"); 

            // Web API 路由
            config.MapHttpAttributeRoutes();

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

 

3、訪問

http://localhost:31591/api/your-action?$format=json

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM