ASP.NET web api返回XML而不是JSON
这个问题在这里已经有了答案:
如果您按照以下方式修改WebApiConfig ,则默认情况下会获得JSON。
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
var appXmlType = config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml");
config.Formatters.XmlFormatter.SupportedMediaTypes.Remove(appXmlType);
}
}
Web Api查找即将到来的请求的标题以选择返回的数据类型。 例如,如果设置Accept:application / json,它会自动将返回类型设置为JSON。
除此之外,设置内容类型为Web-API提供了关于即将到来的请求数据类型的线索。 因此,如果您想将JSON数据发布到Web API,则应该在标题中包含Content-Type:application / json 。
链接地址: http://www.djcxy.com/p/20413.html上一篇: ASP.NET web api returning XML instead of JSON
下一篇: How to return content in specified 'Accept' format from Web API aciton