Разработка бэкенда на компьютере и тестирование на реальном мобильном устройстве? - PullRequest
0 голосов
/ 29 января 2019

Я разрабатываю бэкэнд с некоторыми маршрутами, которые я хочу использовать в приложении для iOS (разрабатываю приложение с Экспо и native-native).Поэтому в режиме разработки (как для бэкенда, так и для приложения) бэкэнд обслуживается на http://127.0.0.1:80/, и он отлично работает, когда приложение работает на эмуляторе iOS, но когда я запускаю приложение на реальном устройстве,тогда я не могу подключиться к бэкэнду, используя тот же URL.Какой URL мне следует использовать?Или какую настройку мне не хватает?Вот код, который у меня есть для запуска сервера ...

const app = require('./app');
app.set('port', process.env.PORT || 80);
const server = app.listen(app.get('port'), () => {
  console.log(`Express running → PORT ${server.address().port}`);
});

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Так что благодаря @Mukeyii я нашел ответ (для Mac и iPhone как минимум) на этой странице

Вот шаги:

  1. В вашем приложении Node вам нужно указать порт и IP-адрес, который вы будете прослушивать, например:
const app = require('./app'); // app is made with express.js
app.set('port', 80);
const server = app.listen(app.get('port'), '0.0.0.0', () => {
  console.log(`Express running → PORT ${server.address().port}`);
});

Странно, я хотел поставить 127.0.0.1 ip, ноэто не сработало.0.0.0.0 работал на меня, поэтому я поставил его.

В файле /private/etc/hosts добавьте строку 0.0.0.0 any.url.you.wish, сохраните и протестируйте в браузере на своем компьютере, что при запуске приложения (режим разработки) и вводе URL-адреса any.url.you.wish, вы идетев вашем приложении.

Загрузите SquidMan и откройте его, дайте ему установить то, что он хочет установить.

InSquidMan> Настройки, установите порт на вкладке Общие (для меня: 80)

На вкладке Клиент установите новый ip: ip-адрес мобильного устройства iOS.Чтобы получить его, вам нужно нажать на i перед вашей подключенной к WiFi сети.

На вкладке Шаблон добавить комментарий к строке http_access deny to_localhost и добавить этидве строки:

# hosts file
hosts_file /private/etc/hosts
Сохранение настроек и запуск Squid Получение IP-адреса Mac в Системных настройках> Сеть Настройка прокси на iPhone (порт + ip) внизу того жевид описан в 5.

Вот и все!Читайте больше информации в этом URL: http://egalo.com/2012/05/29/testing-mac-web-site-using-local-hostname-on-mobile-device/

0 голосов
/ 29 января 2019

Localhost не будет работать, если у вас два разных устройства.Вместо этого попробуйте подключиться к одной и той же сети Wi-Fi и использовать ipv4 адрес вашего компьютера (найдите с ipconfig в cmd) вместо '127.0.0.1'.При условии, что ваш брандмауэр не блокирует соединение.

...