React Native возвращает [необработанное отклонение обещания: TypeError: сбой сетевого запроса], когда я делаю запрос на публикацию - PullRequest
1 голос
/ 19 марта 2020

Когда я делаю почтовый запрос в React Native с Ax ios, он возвращает [Отклонение необработанного обещания: Ошибка типа: Ошибка сетевого запроса]. Это мой json и мой топор ios метод

const credentials= {
NickName: "ricardo.luna",
Password: "123",
AccesoAplicacion: 1,
DerechosRangoInicial: 1000,
DerechosRangoFinal: 1012
}

const loginAxios = () => {
axios
  .post('x.x.x.x/API/users', credentials)
  .then(response => {
    console.log(response.IdUser);
  });
 };

Ответы [ 2 ]

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

Вам необходимо передать параметры сообщения как FormData

let bodyFormData = new FormData();

bodyFormData.set('NickName', 'Fred');
bodyFormData.set('Password', '123');
bodyFormData.set('AccesoAplicacion', 1);
bodyFormData.set('DerechosRangoInicial', 1000);
bodyFormData.set('DerechosRangoFinal', 1012);

const loginAxios = () => {
axios({
    method: 'post',
    url: 'x.x.x.x/API/users',
    data: bodyFormData,
    headers: {'Content-Type': 'multipart/form-data' }
    })
    .then(function (response) {
        //handle success
        console.log(response);
    })
    .catch(function (response) {
        //handle error
        console.log(response);
    });
};

Или вы можете использовать модуль querystring для построения строки запроса

const querystring = require('querystring');

const credentials= {
NickName: "ricardo.luna",
Password: "123",
AccesoAplicacion: 1,
DerechosRangoInicial: 1000,
DerechosRangoFinal: 1012
}

const loginAxios = () => {
axios
  .post('x.x.x.x/API/users', querystring.stringify(credentials))
  .then(response => {
    console.log(response.IdUser);
  });
 };
0 голосов
/ 19 марта 2020

просто добавьте после .then () .catch(error=>{}), чтобы обработать отклонение и поймать возвращенную ошибку

...