POSTing от jQuery $. ajax до webAPI с параметрами - PullRequest
0 голосов
/ 16 марта 2020

Как я могу получить это от $.ajax?

[HttpPost("Folder")]
public async Task<IActionResult> PostFolder(int parentId, string name)
{
    //...
}

Кажется, что webAPI ожидает JSON, а не URL-кодированные данные, и что вам нужно усердно работать, чтобы jQuery произвел это - в частности, вам нужно явно JSON.stringify, иначе он просто отправляет URL-кодированный, даже когда dataType: 'json'.

                        $.ajax({
                            url: '/api/Foo/Folder',
                            type: 'POST',
                            dataType: 'json',
                            contentType: "application/json; charset=utf-8",
                            data: JSON.stringify({
                                parentId: this.item.Id,
                                name: 'New bar'
                            }),

Однако я просто не могу получить в C# значения, отправляемые из JavaScript. Я пытался сделать POCO с использованием [FromBody], но значения никогда не заполняются.

Можно ли использовать POST из JavaScript или нет? Если так, то как?

...