Вызовите локальный API-интерфейс в реагировать родной (Android-устройство: подключен через локальный) - PullRequest
0 голосов
/ 03 февраля 2019

Создан простой GET API с использованием node.js и попытка использовать его в моем собственном проекте expo-реагирования с помощью axios / fetch.

GET API вызывается всякий раз, когда пользователь нажимает кнопку подтверждения.

Submit -> http://localhost:port/api

Однако, когда я пытаюсь протестировать эту функцию на моем устройстве Android, подключив устройство через datacable и выбрав «локальный» тип подключения в expo, вызов API всегдаподпадает под исключение.

Когда я пытался записать исключение, исключение печатается пустым.

Я дважды проверил API, и он отлично работает при тестировании через почтальона.

Я попытался заменить локальный URL-адрес на my-Ip (http://IP:port/api), а также на 127.0.0.1/127.0.2.2 (http://127.0.0.1:port/api, http://127.0.2.2:port/api), но, похоже, ничто не заставляет API вызыватьУспех.

Когда я заменил URL-адрес локального хоста на образец сетевого API-интерфейса Facebook, приложение работало нормально. Таким образом, нет никаких проблем с методом вызова API.

Также попытался добавить портк Windows входящий запрос брандмауэра, но он тоже не сработал.

Может кто-нибудь помочь мне с этим?

Ответы [ 2 ]

0 голосов
/ 03 февраля 2019

Вы должны вызывать API с вашего локального IP-адреса.Чтобы получить локальный IP-адрес, просто сделайте следующее:

Если вы используете Ubuntu 16.04:

ifconfig | grep 192

Если вы используете Ubuntu 18.04:

ip -c a | grep 192

Вашлокальный IP-адрес, вероятно, будет примерно таким: 192.168.0.XXX.

0 голосов
/ 03 февраля 2019

да, у меня также была эта проблема, пока я не использовал свой локальный IP (пример: http://192.168.1.55:port) вместо 127.0.0.1, пожалуйста, см. этот ответ

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