2016-10-24 3 views
0

Ich verwende derzeit Socket.io NPM-Modul mit ExpressJS in meinem Server an Port 5555. Auf meiner Client-Seite verwende ich io.connect zu meinem localhost: 5555, die meine ist Server im AngularJS-Controller. Meine Clientseite gibt XMLHttpRequest kontinuierlich zurück. In meiner Server-Seite hatte ichXMLHttpRequest kann nicht mit Socket.io in ExpressJS geladen werden

app.use (CORS())

app.use (CORS ("http://localhost:6666"))

Aber noch kein Glück verwendet.

Client Side auf localhost läuft: 6666

var socket = io.connect("http://localhost:5555"); 

Server Side auf localhost läuft: 5555

var app = express(); 
var server = require('http').Server(app); 
var io = require('socket.io')(server); 
var port = process.env.PORT; 
io.set('transports', ['websocket', 'xhr-polling', 'jsonp-polling', 'htmlfile', 'flashsocket']); 
io.set('origins', '*:*'); 

Fehlermeldung:

XMLHttpRequest kann nicht geladen werden loc alhost: 5555/socket.io /? EIO = 3 & Transport = Abfrage & t = LVsapo4. Anmeldeinformationen-Flag ist 'wahr', aber die 'Access-Control-Allow-Credentials' Kopfzeile ist ''. Es muss "wahr" sein, um Anmeldeinformationen zuzulassen. Origin 'localhost: 6666' ist daher nicht zulässig.

+0

Haben Sie es ohne die zweite Kors Initialisierung versucht? – bflemi3

+0

@ bflemi3 ja immer noch nicht funktioniert – Foonation

Antwort

0

Können Sie versuchen, dies in Ihrer ausdrücklichen Server-Code

app.use(function(req, res, next) { 
    res.header("Access-Control-Allow-Origin", "*"); 
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); 
    next(); 
}); 

anstelle des Codes, die Sie derzeit verwenden.

+0

Ich hatte alle Kors und IO-Sets entfernt und Ihre Codes hinzugefügt. Fehler immer noch gleich, funktioniert nicht. – Foonation

Verwandte Themen