Ocelot Gateway API возвращает 415 при использовании атрибута FromBody в действии контроллера
Я устанавливаю шлюз Ocelot API для приложения на основе микросервиса, работающего в кластере Kubernetes. Маршрутизация работает правильно, но запросы POST не выполняются, когда я использую атрибут FromBody в действии контроллера.
Это урезанный пример.
Конфигурация Ocelot
{
"UpstreamPathTemplate": "/v1/test/{everything}",
"UpstreamHttpMethod": [],
"DownstreamPathTemplate": "/api/v1/test/{everything}",
"DownstreamScheme": "http",
"DownstreamHostAndPorts": [{
"Host": "users-api",
"Port": 80
}]
}
Действие контроллера
[HttpPost("post-with-from-body")]
public IActionResult PostWithFromBody([FromBody] PostDto postData)
{
return Ok(postData);
}
Если я запускаю API самостоятельно, все работает нормально, и я получаю ответ 200.
Однако при выполнении того же запроса через шлюз API возникает ответ 415.
Я не вижу ничего в документации по Ocelot по этому поводу, поэтому я предполагаю, что это нужно изменить в самой настройке API. Другие почтовые запросы с параметрами запроса работают нормально. Проблема возникает только когда я добавляю атрибут FromBody.
Это журналы от Ocelot: