Не могу получить 3-х сторонний POST-запрос.415 Неподдерживаемый тип носителя или пустая модель
На сервере: Asp.net core 2.2 и Aspnetbilerplate (если это важно)
запрос от стороннего сервера, поэтому я не могу на него повлиять.Я могу указать только конечную точку, в которую будут отправляться запросы
Похоже: curl http://MyServer/api/MyController/MyAction -d '{"a": "a", "b": 1}'
Мой код Dto:
public class testDto
{
public string A { get; set; }
public int B { get; set; }
}
Контроллер:
[Route("api/[controller]/[action]")]
public class MyController : MyControllerBase
{
...
[HttpPost]
public async Task<testDto> MyAction(testDto dto)
{
//some code
_logger.Info("test");
}
...
}
Мой тестовый запрос с консоли с результатами:
C:\WINDOWS\system32>curl -d '{"a":"a", "b":1}' http://myServerUrl/api/MyController/MyAction
curl: (3) [globbing] unmatched close brace/bracket in column 4
{"result":{"a":null,"b":0},"targetUrl":null,"success":true,"error":null,"unAuthorizedRequest":false,"__abp":true}
Модель пуста, нетпривязка произошла.
Я добавил [FromBody] к такому действию:
[HttpPost]
public async Task<testDto> MyAction([FromBody]testDto dto)
{
//some code
_logger.Info("test");
}
Результат: код состояния HTTP 415
Также попробуйте добавить [FromForm] и[FromQyesry].Результат: пустая модель
В чем проблема?Как мне заставить это работать?Заранее спасибо.