Heroku Socket.io - PullRequest
       0

Heroku Socket.io

0 голосов
/ 27 марта 2020

Я запускаю следующий код на Heroku (socket.io 0.9.X):

<code>// https://www.webrtc-experiment.com/

var fs = require('fs');
var port = process.env.PORT;

// HTTPs server
var app = require('http').createServer({}, function(request, response) {
    response.writeHead(200, {
        'Content-Type': 'text/html'
    });
    var link = 'https://github.com/muaz-khan/WebRTC-Experiment/tree/master/socketio-over-nodejs';
    response.write('<title>socketio-over-nodejs</title><h1><a href="'+ link + '">socketio-over-nodejs</a></h1><pre>var socket = io.connect("https://webrtcweb.com:9559/");
'); response.end (); }); // socket.io опускается ниже var io = require ('socket.io'). listen (app, {log: true, originins: '*: *'}); io.set ('transports', [// 'websocket', 'xhr-polling', 'jsonp-polling']); var channel = {}; io.sockets.on ('connection', function (socket) {var initiatorChannel = ''; if (! io.isConnected) {io.isConnected = true;} socket.on ('new-channel', функция (data) {if (! channel [data.channel]) {initiatorChannel = data.channel;} channel [data.channel] = data.channel; onNewNamespace (data.channel, data.sender);}); socket.on ('присутствие ', функция (канал) {var isChannelPresent = !! channel [канал]; socket.emit (' присутствие ', isChannelPresent);}); socket.on (' отключение ', функция (канал) {if (initiatorChannel) {удалить каналы [initiatorChannel];}});}); function onNewNamespace (channel, sender) {io.of ('/' + channel) .on ('connection', function (socket) {var username; if (io.isConnected) {io.isConnected = false; socket.emit ( 'connect', true);} socket.on ('message', function (data) {if (data.sender == отправитель) {if (! username) username = data.data.sender; socket.broadcast.emit ( 'message', data.data);}}); socket.on ('disconnect', function () {if (username) {socket.broadcast.emit ('user-left', username); username = null;} });}); } // запускаем app app.listen (port); process.on ('unhandledRejection', (причина, обещание) => {console.log (причина); process.exit (1);}); console.log ('Пожалуйста, откройте SSL URL: https://localhost:' + (порт) + '/');

Но я так и не смог добраться до своего приложения heroku, ни по http, ни по https (используя порт из среды). Если я получаю доступ, например, http://myappname.herokuapp.com: 22117 / Я просто получаю бесконечную страницу ожидания и в своих логах heroku я также не вижу ничего особенного

2020-03-27T10:36:07.783555+00:00 app[web.1]: info: socket.io started
2020-03-27T10:36:07.785903+00:00 app[web.1]: Please open SSL URL: http://myappname.herokuapp.com:22117/
2020-03-27T10:36:08.721903+00:00 heroku[web.1]: State changed from starting to up

На локальном хосте это работает.

Что мне здесь не хватает?

Заранее спасибо за помощь.

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