2016-01-16 14 views
5

Próbuję uruchomić aplikację js węzła na Heroku przy użyciu WebSockets. Jednak nie jestem w stanie rozwiązać ten problem (jak widać na conosle przeglądarki Chrome)WebSocket na Heroku ERR_CONNECTION_REFUSED

związku websocket do „WSS: //myappname.herokuapp.com: 27225 /” nie powiodło się: Błąd nawiązywania połączenia: net :: ERR_CONNECTION_REFUSED

Używam "wss", ponieważ Heroku działa na HTTPS.

Mój klient kod strony jest:

$.get("https://myappname.herokuapp.com/port",function(data){ 
    port = data; 
    console.log(data); 
    host = 'wss://myappname.herokuapp.com:' + port + '/'; 
    ws = new WebSocket(host); 
    }); 

Serwer kod strony jest:

var WebSocketServer = require("ws").Server 
var fs = require('fs'); 
var express = require('express'); 
var app = express(); 
var http = require('http'); 
var port = process.env.PORT || 5000; 
var request = require('request'); 

var server = http.createServer(app); 
var serverOnPort = server.listen(port); 

console.log("Server listening on port ",port); 

var wss = new WebSocketServer({server: serverOnPort}); 
console.log("websocket server created"); 

Każda pomoc będzie mile widziane.

Dziękuję.

Odpowiedz

6

Wygląda na to, że próbowałem przesadzić z numerem portu. Samo użycie hosta jako wss://myappname.herokuapp.com/ działa dobrze.

+0

Mam dokładnie problem, z którym się spotkałeś, jak udało ci się go zdobyć? Ciągle otrzymuję błąd ERR_CONNECTION_REFUSED. Mój kod jest prawie identyczny z twoim .. –

+0

@DennisSmink Czy używasz numeru portu na końcu adresu URL? Po usunięciu tego z mojego kodu zadziałało zgodnie z oczekiwaniami. – user3157307

+0

Usunąłem port, ale nie działało. W końcu go rozwiązałem, uruchomiłem 2 węzły zamiast 1, heroku na to nie pozwala. –