添加.net core web Api 对XML数据格式的支持

默认情况下WebApi 返回的数据类型是Json格式的数据,XML请求的也会返回json格式,这显然不是我们想要的

MvcOptions.ReturnHttpNotAcceptable的默认值为false, 此时,如果服务器端不支持http request中Accept的格式值,比如application/xml,则不会报错,返回默认格式的结果 也就是 json 格式的数据。

此时我们需要让他启用。

也就是 设置为true

javascrip 复制代码
services.AddControllers(setupAction =>
{

    setupAction.ReturnHttpNotAcceptable = true;
})

但是此时 ,如果是XML的请求,则返回的 406 Not Acceptable

所有我们需要添加对XML的数据支持

传统的方法是在 AddControllers添加

setupAction.OutputFormatters.Add(

new XmlDataContractSerializerOutputFormatter()

);

但是新的我们将是这样 的

javascript 复制代码
 services.AddControllers(setupAction =>
 {

     setupAction.ReturnHttpNotAcceptable = true;


     给控制器添加对XML的支持
     //setupAction.OutputFormatters.Add(
     //    new XmlDataContractSerializerOutputFormatter()
     //);
 }).AddXmlDataContractSerializerFormatters();//给控制器添加对XML的支持

这样就能返回 XML的数据格式了。

相关推荐
小江的记录本16 分钟前
【Linux】《Linux常用命令汇总表》
linux·运维·服务器·前端·windows·后端·macos
无人机9011 小时前
Delphi 网络编程实战:TIdTCPClient 与 TIdTCPServer 类深度解析
java·开发语言·前端
lUie INGA2 小时前
rust web框架actix和axum比较
前端·人工智能·rust
OPHKVPS2 小时前
VoidStealer新型窃密攻击:首例利用硬件断点绕过Chrome ABE防护,精准窃取v20_master_key
前端·chrome
gechunlian882 小时前
SpringBoot3+Springdoc:v3api-docs可以访问,html无法访问的解决方法
前端·html
驾驭人生3 小时前
ASP.NET Core 实现 SSE 服务器推送|生产级实战教程(含跨域 / Nginx / 前端完整代码)
服务器·前端·nginx
酉鬼女又兒3 小时前
零基础快速入门前端ES6 核心特性详解:Set 数据结构与对象增强写法(可用于备赛蓝桥杯Web应用开发)
开发语言·前端·javascript·职场和发展·蓝桥杯·es6
慧一居士3 小时前
Vue项目中,子组件调用父组件方法示例,以及如何传值示例,对比使用插槽和不使用插槽区别
前端·vue.js
我是伪码农4 小时前
HTML和CSS复习
前端·css·html
林恒smileZAZ4 小时前
前端实现进度条
前端