Можно ли использовать Websockets/сокет.IO с данными сотовой связи/4g?

#node.js #react-native #websocket #socket.io #4g

Вопрос:

Я создаю собственное приложение React, которое требует постоянного подключения между клиентами и сервером. Приложение работает только при использовании Wi-Fi. Кому-нибудь удавалось заставить такие вещи работать с сокетом?IO? Или какие-либо другие альтернативы, такие как работа с данными сотовой связи? Почему именно это работает с Wi-Fi, но не с данными сотовой связи?

Вот мой код для подключения к серверу, работающему на моем компьютере на порту 3000:

 const io = require('socket.io-client');
const socket = io('...'); // http://ip:3000
export default socket;
 

Я был бы очень признателен, если бы кто-нибудь мог мне в этом помочь.

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

1. Сотовая связь — это подключение вас к Интернету с использованием любой технологии мобильного доступа 3G/4G/5G. Как только у вас появится 3G или 4G-вход на экране вашего устройства, мобильная сеть уже назначила вам один IP-адрес среди одной из доступных внутренних подсетей, и вы готовы к работе. Ваш Wifi-модем одновременно является маршрутизатором, и это позволяет вам подключиться к другому IP-адресу из той же подсети. Используя мобильные данные, вы не можете этого сделать, потому что теперь вы являетесь частью другой большой локальной сети, которая не может получить доступ к частному IP-адресу, назначенному вам WI-FI маршрутизатором.

Ответ №1:

Мне удалось заставить это работать, разместив мой сервер и базу данных Postgres с помощью Heroku, а затем подключившись к ней. Не работал, потому что я пытался подключиться к частному IP-адресу (192.168.1.254), который работает только при подключении к тому же Wi-Fi.