Как передать значение из приложения react native в серверную часть node js

#javascript #android #node.js #react-native #postman

#javascript #Android #node.js #react-native #почтальон

Вопрос:

Я пытаюсь передать данные на свой сервер js Node с помощью моего приложения react native. И для этого я использую axios.

   onTrigger = () => {
    const params = JSON.stringify({
      "username": "Name",
      "password": "Pass",
    });
    axios.post('http://192.168.1.36:8080/api/signin',params)
    .then(function (response) {
      this.props.navigation.navigate('Principal')
    })
    .catch(function (error) {
      console.log(error);
    });
  }
 

Но это ничего не делает. Мой сервер ничего не обнаруживает.

Но когда я пытаюсь использовать postman с тем же телом и теми же данными, это работает.

введите описание изображения здесь

С Postman у меня есть реакция с моего сервера введите описание изображения здесь

Я хотел бы знать, есть ли у кого-нибудь идея, почему мой axios не работает, но если я делаю то же самое в postman, это работает.

Комментарии:

1. .then(function (response) { попробуйте изменить это на функцию со стрелкой .then((response) => { , чтобы получить доступ к правильному this

2. Мой сервер ничего не обнаруживает от фаната Pink Floyd?

Ответ №1:

попробуйте вот так. это работает для меня

       const params = JSON.stringify({
         "username": "Name",
         "password": "Pass",
        });       
        var config = {
          method: 'post',
          url: 'http://192.168.1.36:8080/api/signin',
          headers: { 
            'Content-Type': 'application/json'
          },
          data : params
        };
        
        axios(config)
        .then(function (response) {
         this.props.navigation.navigate('Principal')  
        })
        .catch(function (error) {
         console.log(error);
        });
 

Комментарии:

1. Нет, это ничего не меняет. У меня сложилось впечатление, что он не получает то, что я пытаюсь отправить с помощью axios

Ответ №2:

Пожалуйста, попробуйте это.

const ApiClient = axios.create({ baseUrl: ‘http://192.168.1.36:8080 /, тайм-аут: 10000, заголовки: {‘Content-Type’: ‘application/json’}, });

const params = { имя пользователя: «Имя», пароль: «Передать», });

ApiClient.post(‘api / signin’,параметры).затем(() => {})

Комментарии:

1. Нет:/ ничего не делать. Но спасибо за попытку :’)