Dopo aver esaminato più post nello stack, non sono riuscito a trovare una risposta corretta.nodo CORS js problema
Controllato anche la documentazione sull'estensione CORS.
Ho il seguente codice server installato e funzionante:
var WebSocketServer = require("ws").Server
var http = require("http")
var express = require('express')
var cors = require('cors')
var app = express();
app.use(cors());
var port = process.env.PORT || 9000
var server = http.createServer(app)
server.listen(port)
var count = 0;
var clients = {};
var rooms = {};
var wss = new WebSocketServer({server: server})
wss.on("connection", function(ws) {
ws.on("create-room", function(data) {
rooms[data] = {creator : data.user_id, created : new Date()}
})
ws.on("close", function() {
console.log("websocket connection close")
})
})
ma ottengo:
XMLHttpRequest non può caricare http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-CbU0. Un carattere jolly "*" non può essere utilizzato nell'intestazione "Access-Control-Allow-Origin" quando il flag delle credenziali è true. L'origine 'http://localhost:8100' non è quindi consentita l'accesso. La modalità di credenziali di un XMLHttpRequest è controllata dall'attributo withCredentials.
Se io commento la linea con app.use(cors());
ottengo:
XMLHttpRequest non può caricare http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-Cwb8. No L'intestazione 'Access-Control-Allow-Origin' è presente sulla risorsa richiesta. L'origine "http://localhost:8100" non è pertanto consentita per l'accesso . La risposta ha avuto codice di stato HTTP 404.
Quindi, chiaramente il mio server è installato e funzionante ok, ma
Grazie per la risposta, ora ho 'Credenziali bandiera è 'vero', ma il 'Access-Control-Allow-credenziali' colpo di testa e '''' –
Grazie, hai fatto il trucco :). Sono nuovo a questo –
Una domanda però, ora ottengo 404 quando il browser chiama l'url però ... Se rimuovo la soluzione ottengo l'errore cors ... È confuso ... –