gpt4 book ai didi

asp.net-mvc - ASP.NET Core 2 中的默认输入格式化程序

转载 作者:行者123 更新时间:2023-12-04 03:13:10 27 4
gpt4 key购买 nike

在 ASP.NET Core 2 应用程序中,我有一个操作 [FromBody]属性。参数由 ASP.NET 引擎从 JSON 主体转换为模型对象。

但它只适用于 Content-Type请求的设置为 application/json .如果未设置 header ,则返回 415(不支持的媒体类型)HTTP 错误。

如何将 [FromBody] 的默认格式化程序设置为 JSON绑定(bind),所以它会绑定(bind)模型,即使 Content-Type请求头没有设置?

最佳答案

如果您没有指定内容类型,则它假定的默认内容类型是“文本/纯文本”。您可以使用以下代码强制应用程序将有效负载视为 json 内容,

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(config =>
{
foreach (var formatter in config.InputFormatters)
{
if (formatter.GetType() == typeof(JsonInputFormatter))
((JsonInputFormatter)formatter).SupportedMediaTypes.Add(
Microsoft.Net.Http.Headers.MediaTypeHeaderValue.Parse("text/plain"));
}
}
);
}

关于asp.net-mvc - ASP.NET Core 2 中的默认输入格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48851668/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com