Ошибка 422 при отправке запроса, но я думаю, что мой запрос отправляется корректно - PullRequest
1 голос
/ 11 января 2020

Я должен сделать POST-запрос к предоставленному мне API.

Я должен отправить ему некоторые данные и получить токен JWT.

Данные, которые я должен отправить, это объект с именем data, подобный этому:

{
    "firstName": "Jane",
    "address": "Lohmühlenstraße 65",
    "numberOfChildren": 2,
    "occupation": "EMPLOYED",
    "email": "jane.doe@getpopsure.com"
}

И документ API выглядит следующим образом:

curl https://challenge-dot-popsure-204813.appspot.com/user \
-H 'Content-Type: application/json' \
-d '{"firstName":"Jane","address":"Lohmühlenstraße 65","numberOfChildren":2,"occupation":"EMPLOYED","email":"jane.doe@getpopsure.com"}' \
-X POST

Я отправляю с топором ios POST запрос, с объектом, но я получаю 422 Ошибка:

Failed to load resource: the server responded with a status of 422 ()

Это мой запрос POST, где data - объект выше:

    axios.post('https://challenge-dot-popsure-204813.appspot.com/user', data)
    .then(function (response) {
      debugger
      console.log(response);
    })
    .catch(function (error) {
      console.log(error);
    });

Есть идеи, в чем может быть проблема?

1 Ответ

0 голосов
/ 11 января 2020

Мне удалось воспроизвести ошибку 422, удалив или аннулировав данные JSON. Например, удалите / переименуйте свойство «firstName».

Пример:

{
    "name": "Jane",
    "address": "Lohmühlenstraße 65",
    "numberOfChildren": 2,
    "occupation": "EMPLOYED",
    "email": "jane.doe@getpopsure.com"
}

Результат: 422 Необработанный объект

{
    "errors": {
        "firstName": [
            "Missing data for required field."
        ],
        "name": [
            "Unknown field."
        ]
    }
}

Плункер

Я думаю, что проблема вас вы столкнулись с тем, что ожидаемые вами данные не все, когда вы делаете топор ios .post, что приводит к ошибке, которую вы видите. Убедитесь, что данные, отправленные в запросе, содержат все допустимые поля и значения заранее.

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