asp.net-web-api - 即使客户端请求 XML,我的 ASP.NET REST 应用程序仍在返回 JSON
问题描述
我有一个 ASP.NET Web API2 Web 应用程序。对于其配置,它具有:
GlobalConfiguration.Configuration.Formatters.XmlFormatter.UseXmlSerializer = true;
客户端正在请求 XML:
private static HttpWebRequest CreatetRequest(Uri uri, string method, int timeout)
{
var request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = method;
request.Timeout = timeout == 0 ? System.Threading.Timeout.Infinite : timeout;
request.Accept = "application/xml";
request.ContentType = "application/xml";
return request;
}
但是返回的是 JSON。然后当客户端进行以下调用时:
using (var stream = response.GetResponseStream())
{
body = XDocument.Load(XmlReader.Create(stream));
它会引发异常,因为它无法将 JSON 作为 XML 加载。我需要在服务器端做什么来解决这个问题(我无法更改客户端 - 该代码已失效并正在使用中)?
解决方案
找到它 - 返回的对象之一 dd 没有无参数构造函数。XML 序列化需要,而 JSON 不需要。
推荐阅读
- android - Android 开发与改造
- android - 即使在使用 addView 之后 getChildCount() 总是返回 1
- tizen - 如何在 Tizen Native (Gear S2) 中查找传感器规格
- c# - Unity 无法识别 .NET Standard 2.0 参考
- angular - vmware-clarity 类型“ElementRef”不是通用的
- amazon-web-services - AWS - 不同区域的EC2和RDS很慢
- c - 串口挂在 close()
- html - 当我点击我的文本区域时
- c# - 用于选择类的 VSIX 扩展
- tcp - 从 UDP 接收,通过 TCP 响应