【发布时间】:2016-07-15 23:56:20
【问题描述】:
浏览了堆栈上的多个帖子后,我仍然找不到正确的答案。
还检查了CORS 扩展的文档。
我已经启动并运行了以下服务器代码:
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")
})
})
但我明白了:
XMLHttpRequest 无法加载 http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-CbU0。一种 通配符 '*' 不能在 'Access-Control-Allow-Origin' 中使用 当凭证标志为真时标头。起源 'http://localhost:8100' 因此不允许访问。这 XMLHttpRequest 的凭据模式由 withCredentials 属性。
如果我用app.use(cors()); 评论该行
我明白了:
XMLHttpRequest 无法加载 http://localhost:9000/socket.io/?EIO=3&transport=polling&t=LE-Cwb8。不 'Access-Control-Allow-Origin' 标头出现在请求的 资源。因此不允许使用原点“http://localhost:8100” 使用权。响应的 HTTP 状态代码为 404。
很明显我的服务器已经启动并运行正常,但是
【问题讨论】:
标签: angularjs node.js socket.io cors