Expo не может получить данные с json -сервера node.js - PullRequest
0 голосов
/ 06 мая 2020

Я недавно начал учить React native. У меня такая проблема.

Запускаю приложение Expo и оно работает Я go с подпунктом, где данные берутся с сервера json и там пусто. Пишет сетевой запрос не удалось. Насколько я понимаю данные с сервера не читаются.

Вот подробнее.

Сначала запускаем json server, набираем json -server --watch db. json -p 3001 в командной строке. Это все началось. Я наберу go в браузере и наберу localhos: 3001 / books. И данные появляются. Насколько я понял, он отвечает на запрос.

Далее запускаем response native. Все загружается, запускается в браузере сборщика метро (localhost: 19002).

Есть три типа запуска программы на телефоне:

1.local и адрес 127.0.0.1, как я понял, нужен для подключения и запуска через usb кабель . Пробовал этим методом запускать приложение. Но данных не появляется. Пишет сетевой запрос failed.

2.lan и ip адрес компа, как я понял через wi-fi. Поскольку у меня нет Wi-Fi роутера, я попытался дать Wi-Fi со своего компьютера. Подключил модем. И он начал делиться Wi-Fi. Подключил телефон и запустил. Он вообще не запустился. IP-адрес компьютера в режиме локальной сети по умолчанию, принимает IP-адреса модема (192.168.8.100) и телефона (192.168.43.216). Короче говоря, телефон и компьютер должны находиться в одной локальной сети. Думаю может быть если возьму еще комп. Он будет использоваться как маршрутизатор Wi-Fi вместо маршрутизатора. А потом подключу к нему рабочий компьютер и телефон. Настроил ip адреса. Все еще не запускается. Думаю, что я сделал что-то не так. Я не специалист по локальным сетям. Если есть идеи, помогите.

3.tunnel не совсем понял как пользоваться. Решил поделить вай фай с телефона и сделать точку доступа. Подключил мой компьютер и побежал. Вроде запустился, но данные все равно не отображаются.

Помогите, пожалуйста.

1) для подключения к локальной сети без Wi-Fi роутера.

2) как читать данные с json сервера на телефон.

Ps убил 3 дня, пытаясь разобраться.

1 Ответ

0 голосов
/ 06 мая 2020

Я скопировал пример из «Начало работы» в README , а затем запустил npx json-server --watch db.json -p 3001. Затем я перешел к http://localhost: 3001 / posts / 1 в моем браузере, и он работал, как ожидалось.

Затем я открыл новую вкладку в терминале и запустил npx ngrok http 3001, чтобы открыть создать туннель для доступа к http-серверу через порт 3001 из любого места. После запуска туннеля я увидел следующую информацию:

ngrok by @inconshreveable                                                                     (Ctrl+C to quit)

Session Status                online
Session Expires               7 hours, 58 minutes
Version                       2.3.35
Region                        United States (us)
Web Interface                 http://127.0.0.1:4040
Forwarding                    http://ef4b99ca.ngrok.io -> http://localhost:3001
Forwarding                    https://ef4b99ca.ngrok.io -> http://localhost:3001

Я открыл https://ef4b99ca.ngrok.io/posts/1 в моем браузере, и он работал, как ожидалось (это не сработает для вас, когда вы читаете это потому что к тому времени я закрою туннель ngrok и свой json -сервер).

Если вы выполните следующие действия и используете URL-адрес туннеля в своем приложении, вы сможете получить к нему доступ в процессе разработки со своего устройства .

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