我有一个Web API项目,它返回一些产品数据。它根据请求的Accept标头(JSON / XML)正确地协商返回类型。问题是,如果没有指定Accept标头,则默认返回XML,但我希望默认返回JSON。
http://website.com/MyPage?type=json // returns json
http://website.com/MyPage?type=xml // returns xml
http://website.com/MyPage // returns xml by default
这是我当前的代码:
GlobalConfiguration.Configuration.Formatters.XmlFormatter.MediaTypeMappings.Add(
new QueryStringMapping("type", "xml", new MediaTypeHeaderValue("application/xml")));
GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(
new QueryStringMapping("type", "json", new MediaTypeHeaderValue("application/json")));
WebApiConfig.Register()
中创建的new Httpconfiguration()
中的config
对象,而不是GlobalConfiguration.Configuration
。更多信息请参见此处。 - Alastair