首页 文章

如何更改默认的ASP.NET MVC Web API媒体格式化程序?

提问于
浏览
16

我有一个Web API项目,它返回一些产品数据 . 它根据请求的Accept标头(JSON / XML)正确协商返回类型 . 问题是,如果没有指定Accept头,它返回JSON,但我希望它默认返回XML . 如何更改Global.asax中的内容协商默认值?

1 回答

  • 31

    通过http://www.strathweb.com/2013/06/supporting-only-json-in-asp-net-web-api-the-right-way/找到解决方案

    WebApiConfig.Register() 中添加了此内容:

    config.Formatters.Clear();
    config.Formatters.Add(new XmlMediaTypeFormatter());
    config.Formatters.Add(new JsonMediaTypeFormatter());
    config.Formatters.Add(new FormUrlEncodedMediaTypeFormatter());
    

    因此默认是XML,第一个格式化程序,但如果请求要求,API仍支持JSON .

相关问题