我有自己用 C 编写的 node.js 。当我打开浏览器并浏览到192.168.0.150:8000/index
并调用脚本时:
var socket = io.connect("/index");
socket.on('connect', function() {
$('#onindex').addClass('connected');
});
每件事都没问题。 但: 当我尝试:
var socket = new io.Socket('192.168.0.150', {port: 8000 });
socket.connect("/index.html");
我在Javascript控制台上收到以下错误:
XMLHttpRequest无法加载192.168.0.150/index.html:80/socket.io/xhr-polling//... Access-Control-Allow-Origin不允许使用null。
这表明服务器无法找到它。
如何假装JS认为我在浏览?
答案 0 :(得分:0)
让我们分解您的错误消息
XMLHttpRequest
问题在于 XMLHttpRequest (在运行脚本的一边)
无法加载
192.168.0.150/index.html:80/socket.io/xhr-polling//
...
无法加载页面
null
不允许{p>来源Access-Control-Allow-Origin
。
因 Access-Control-Allow-Origin 设置阻止null
的来源 。
您可以阅读access control here on MDN。 null
的来源可能来自位于data URI或使用file:
协议的网页。这是同源政策的一部分,您可以阅读here。您可能必须在服务器上设置CORS才能使其正常工作。