У меня ASP. NET проект WebAPI (не. net core) Я добавил простую конечную точку, которая принимает запрос POST.
[HttpPost]
[Route("cases/{caseId:int}/confirm")]
public async Task<IHttpActionResult> ConfirmCase(int caseId, [FromBody] string code)
{
//
}
Когда я делаю Пример запроса с 0012
в качестве тела: ![enter image description here](https://i.stack.imgur.com/yHAro.png)
, затем внутри моего метода я вижу, что значение читается правильно: ![enter image description here](https://i.stack.imgur.com/wMwq3.png)
но когда я делаю запрос с 0008
в качестве тела:
![enter image description here](https://i.stack.imgur.com/1j5mr.png)
я получаю ноль как code
: ![enter image description here](https://i.stack.imgur.com/HzU3K.png)
Мой обходной путь - отправить код внутри кавычек, например: "0008"
, тогда все работает, как ожидалось.
Я не смог найти объяснения, почему это ведет себя как вот почему тело нуждается в кавычках и почему только для значения, начинающегося с 08
.