React-Native: как заставить socket.io работать на живом сервере - PullRequest
0 голосов
/ 05 октября 2019

Я использую экспресс с socket.io версии 2.2.0 с этого URL: https://github.com/socketio/socket.io#readme

Я использую socket.io в приложении-реактиве, и оно отлично работает при работе на localhost, носейчас я пытаюсь перейти на живой сервер для бета-тестирования, и я не уверен, как заставить его работать на живом сервере. Я использую Bluehost.

Вот теперь я настроил его для запуска на локальном хосте:

В любом компоненте:

componentDidMount() {
    this.socket = io('http://IPADDRESS:3000', {
        jsonp: false
    });
    this.socket.on('some_string', () => this.someFunction());
}

Настройка socket.io в файле app.js:

var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);

server.listen(3000);

io.on('connection', function (socket) {
    socket.on('some_string', function (some_value) {
        socket.join(some_value);
    });
    ...
});

Через мой хостинг с Bluehost у меня есть URL, IP-адрес и номер порта. Я пытался использовать все это в моем коде, но не могу заставить его работать. Кто-нибудь знает, как это сделать?

Редактировать:

Я нашел здесь , что, очевидно, вам нужен доступ к оболочке, которая доступна только с VPS или выделенным сервером. Я подтвердил это с поддержкой чата Bluehost. А используя доступ к оболочке SSH, вы можете непрерывно запускать сервер socket.io в фоновом режиме. Это кажется правильным? Похоже, что для чего-то, что, вероятно, используют многие приложения, возникают большие проблемы ...

Даже когда я запускаю это на локальном хосте, мне приходится использовать узел в терминале для запуска сервера socket.io.

И похоже, что для открытия портов требуется выделенный сервер.

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