Ich erhalte diesen Fehler in der Konsole meines Browsers so denke ich, es ist ein Winkel + socket.io Problem:Knoten + AngularJS + Socket.io: net :: ERR_CONNECTION_REFUSED
GET http://localhost:3000/socket.io/?EIO=3&transport=polling&t=LF3gkk7 net::ERR_CONNECTION_REFUSED
eventho ich Ratschläge an, der gesagt
ctrl.socketIo = io();
ctrl.socketIo = io.connect();
ctrl.socketIo = io.connect('http://localhost:3001');
keiner von denen gearbeitet: Winkel var io
wie sich ändern! Diese
ist, wie mein Eckige Controller aussieht:
angular.module("app")
.controller("chatController", [
'userService',
function (userService) {
var ctrl = this;
ctrl.messages = [];
ctrl.socketIo = io();
ctrl.userName = userService.name;
ctrl.submit = function() {
ctrl.socketIo.emit("chat_message", ctrl.inputMessage);
ctrl.messages.push(ctrl.inputMessage);
ctrl.inputMessage = null;
};
ctrl.socketIo.on("update_clients", function (msg) {
ctrl.messages.push(msg);
});
}]
);
Mein index.html Pfad verweisen auf die Verz:
<!doctype html>
<html>
<head>
//boilerplate...
</head>
<body ng-app="app">
//boilerplate...
<script src="/bower_components/socket.io-client/socket.io.js"></script>
//boilerplate...
</body>
</html>
Wie Sie in meinem dir Strukturpfad sehen zeigt richtig socket.io.js:
Upd ate
Ich benutze Digital Ocean VPS, und wenn ich netstat -a -p
laufen, scheint es nicht, dass PORT 3000 verwendet wird.
UPdate 2:
Ein Dienst in meiner App zu localhost zu verbinden versuchte: 3000 so gelöscht ich, dass ein Teil, da ich dort bin ich jetzt nicht Steckdose schon daran gedacht:
Update 3 Endcode zurück:
'use strict';
var express = require("express");
var app = express();
var http = require("http");
var server = http.createServer(app);
var io = require("socket.io")(http);
//use environment var PORT or 3001
var portNum = 3001;
//route handler
app.get("/", function (req, res) {
res.sendFile("./index.html", {root: "./client/"});
});
app.use(express.static('./client'));
io.on("connection", function (socket) {
socket.on("chat_message", function (msg) {
socket.broadcast.emit('update_clients', msg);
});
});
server.listen(portNum, function() {
console.log("listening on port: " + portNum);
});
Gibt es einen Port-Mismatch? Sie verwenden Port '3000' und' 3001'. –
@MukeshSharma, verwende ich auf der Knotenseite: 'var portNum = process.env.PORT || 3001; 'Ich benutze auch digitale Ocean VPS, wenn ich' netstat -a -p'nrufe. Es scheint nicht, dass PORT3000 verwendet wird. – Jeka
Sie bekommen 'Connection Refused', weil Ihr Backend am Port' 3001 abhört ', Ihre Front-End-App versucht, sich mit' 3000' zu verbinden. –