一个很实用的技巧,可以在访问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