我目前正在观看有关ASP.NET Web API的视频课程.调用控制器时,默认情况下会以JSON格式返回数据.我只是想知道,因为当我从视频中复制这个示例项目时,我得到了XML.
沮丧很大,请帮我解决这个问题.
我是ASP.NET Web API的新手,所以请耐心等待.
UPDATE
控制器不包含特殊代码.这是简单的代码,它是从带有空读/写操作模板的API控制器生成的.
Jam*_*mes 10
ASP.NET WebAPI带有内置的内容协商,因此返回值的格式由请求本身决定 - 更具体地说是由Accept/ Content-Typeheaders决定的(取决于哪些存在,Accept标题似乎比它更受欢迎Content-type).
我假设您在浏览器中查看结果,默认情况下可能要求application/xml.您需要在浏览器上玩一些设置/开发人员工具并强制它发送Content-Type: application/json以获得正确的响应(假设您返回的HttpResponseMessage).
在Global.asax中:添加行:
GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
Run Code Online (Sandbox Code Playgroud)
它看起来像这样.
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
BundleTable.Bundles.RegisterTemplateBundles();
GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6863 次 |
| 最近记录: |