asp.net-core-webapi - 如何更改 ASP.NET Core API 中的默认响应内容类型?
问题描述
我正在将遗留 API 重新实现为ASP.NET Core web API
. 我已经实现了内容协商,并且运行良好 - 所有操作都支持基于请求中的响应JSON
格式。我的问题是,如果没有指定 Accept 标头,原始 API 默认为 XML,而我的 ASP.NET Core API 默认为 JSON。当没有 Accept 标头时,如何创建默认响应内容类型 XML?XML
Accept header
解决方案
你可以在里面配置Startup
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(options => {
options.OutputFormatters.Insert(0, new XmlDataContractSerializerOutputFormatter());
}).SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
或者只是使用控制器中的属性Produces
。
[Produces("application/xml")]
public class MyController()
{
...
}
推荐阅读
- python-3.x - Azure 函数 - “未找到任何已初始化的语言工作者”
- javascript - 如何将 Vue 数据移动到外部文件?
- python-3.x - 检查输入时出错:预期 lstm_132_input 有 3 个维度,但得到的数组形状为 (23, 1, 3, 1)
- mysql - 如何跟踪 MySQL 容器的重启?
- ios - 如何以编程方式将 ImageView 与 ScrollView 的底部对齐?
- c# - 在 Unity 中使用泛型作为变量类型
- c++ - 来自 c ++ 的具有多种解决方案的复杂查询
- c# - 错误:来自 Stimulsoft ASP MVC 5 中服务器的超时响应
- postgresql - 索引存在,但排序仍然需要时间
- python - 将嵌套的 dict 项组合成一个字符串