TunnelHunt Войти

Разработка мобильного приложения с локальным бэкендом: простое решение с TunnelHunt

Автор: Алексей ПетровОпубликовано: 15 мая 2025 г.
Смартфон лежит рядом с ноутбуком с открытым кодом

Каждый мобильный разработчик сталкивался с этой ситуацией: вы пишете код для iOS или Android приложения, которое должно общаться с вашим бэкендом. Бэкенд отлично работает на http://localhost:8080, но как вашему смартфону, подключенному по Wi-Fi, получить к нему доступ?

Ваш телефон и компьютер находятся в одной локальной сети, но localhost для телефона — это сам телефон, а не ваш компьютер. Можно, конечно, искать локальный IP-адрес вашего компьютера и прописывать его в коде, но это неудобно, особенно если IP-адрес меняется.

Есть способ гораздо проще.

Создаем публичную точку входа для вашего API

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

Шаг 1: Убедитесь, что ваш API запущен

Предположим, ваш бэкенд запущен и отвечает по адресу http://localhost:8080.

Шаг 2: Создайте туннель

Откройте терминал на компьютере, где работает бэкенд, и выполните:

ssh -R 80:localhost:8080 -p 2222 nokey@tunnelhunt.ru

Сервис выдаст вам уникальный адрес, например: https://clever-fox-456.tunnelhunt.ru.

Шаг 3: Обновите конфигурацию в мобильном приложении

Теперь самое главное. В коде вашего мобильного приложения (будь то Swift, Kotlin, React Native или Flutter) найдите место, где определяется базовый URL вашего API.

Замените http://localhost:8080 на ваш новый публичный адрес от TunnelHunt.

Пример для React Native с использованием Axios:

// было:
const apiClient = axios.create({
  baseURL: 'http://localhost:8080/api',
});

// стало:
const apiClient = axios.create({
  baseURL: 'https://clever-fox-456.tunnelhunt.ru/api',
});

Шаг 4: Пересоберите приложение и тестируйте!

Пересоберите ваше приложение и запустите его на реальном устройстве. Теперь все сетевые запросы из приложения будут идти на сервер TunnelHunt, а оттуда — прямиком на ваш localhost:8080.

Преимущества такого подхода:

  1. Простота: Не нужно возиться с IP-адресами, настройками сети и прокси.
  2. Стабильность: URL не изменится, даже если вы подключитесь к другой Wi-Fi сети.
  3. Реалистичные условия: Вы тестируете приложение в условиях, приближенных к реальным, когда оно обращается к серверу через интернет.
  4. Отладка: Вы можете ставить точки останова (breakpoints) в коде вашего бэкенда и ловить запросы, приходящие с реального мобильного устройства.

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