Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core asp.net核心web api不支持的媒体类型错误_Asp.net Core_Asp.net Core Webapi - Fatal编程技术网

Asp.net core asp.net核心web api不支持的媒体类型错误

Asp.net core asp.net核心web api不支持的媒体类型错误,asp.net-core,asp.net-core-webapi,Asp.net Core,Asp.net Core Webapi,当我发送POST请求时,会出现以下错误: { “类型”:https://tools.ietf.org/html/rfc7231#section-6.5.13", “标题”:“不支持的媒体类型”, “地位”:415, “traceId”:“3866e04e-4b62c808bec91a8c。” } 模范班 名称空间WebApi.Models { 公共类用户 { 公共字符串用户名{get;set;} 公共字符串密码{get;set;} } } 控制器 使用系统; 使用Microsoft.AspN

当我发送POST请求时,会出现以下错误:

{
“类型”:https://tools.ietf.org/html/rfc7231#section-6.5.13",
“标题”:“不支持的媒体类型”,
“地位”:415,
“traceId”:“3866e04e-4b62c808bec91a8c。”
}
模范班

名称空间WebApi.Models
{
公共类用户
{
公共字符串用户名{get;set;}
公共字符串密码{get;set;}
}
}
控制器

使用系统;
使用Microsoft.AspNetCore.Mvc;
使用WebApi.Models;
命名空间WebApi
{
[ApiController]
[路线(“/”)]
公共类HomeController:控制器
{
[HttpGet]
public IActionResult Get()
{
返回视图(“索引”);
}
[HttpPost]
公开作废帖子(用户)
{
Console.WriteLine(user.Username);
Console.WriteLine(用户密码);
}
}
}
和.cshtml文件:


用户名:
密码:

因为您的控制器是apicontroller,默认情况下它会获取json数据,但您会发送表单数据,因此您需要通过向操作添加
[FromForm]
属性来指定源:

[HttpPost]
public void Post([FromForm]User user)
{
    Console.WriteLine(user.Username);
    Console.WriteLine(user.Password);
}
结果:

确保接受的内容类型与您在请求中发送的内容类型匹配。非常感谢!我想,需要一个ApiController来纠正控制器的操作。到目前为止,我只从很少的波兰资料中读到过。这个功能我在一些论坛上读过。再次谢谢你,谢谢!:D