400 плохих запросов на публикацию. Net Базовый API через Ajax - PullRequest
0 голосов
/ 11 марта 2020

Я пытаюсь вызвать простой метод с ajax следующим образом:

[Route("v1/[controller]")]
[ApiController]
public class FooController : Controller
{   [HttpPost]
    public FooDTO Add(Foo Foo)
    {
       FooDTO  objFooDTO   = null;
     }
}

public class Foo 
{
    public int ID {get; set;}
    public string Title {get; set;}
}

Ajax запрос выглядит следующим образом:

var obj = {
            "ID": 0,
            "Title": "Foo Bar"
        }
    $.ajax({
        type: "POST",
        url: "http://localhost:8001/v1/Foo",
        data: obj,
        async: false,
        dataType: "Json",
        crossDomain: true,
        contentType: 'application/x-www-form-urlencoded',
        cache: false,
        success: function (resp) {

        },
        error: function (e) {

        }
    });

Хорошо работает с POSTMAN но когда я пытаюсь нажать через ajax ошибка 400 Неверный запрос The input is not valid. Есть что-то, чего мне не хватает? jquery версия 1.12.0.

1 Ответ

0 голосов
/ 11 марта 2020

Похоже, что свойство contentType должно быть application/json, поскольку вы передаете объект, но не данные формы.

Кроме того, вы должны сериализовать объект данных с помощью метода JSON.Stringify, чтобы javascript объект будет преобразован в json.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...