socket.io.js的跨域问题

时间:2014-08-20 22:02:35

标签: node.js internet-explorer coldfusion socket.io

我正在处理node.js应用程序并且遇到socket.io.js文件的“访问被拒绝”错误。

  • 我的ColdFusion应用程序在具有域A.com的服务器A上运行
  • 我的节点服务器位于服务器B上,域名是B.com

我的ColdFusion应用程序正在尝试加载节点应用程序,但是当它尝试从B.com加载socket.io.js时,我得到“访问被拒绝”。此问题仅在IE中被注意到。

一个解决方法是将B.com添加到IE上的可信站点列表。然后应用程序加载正常。

对此的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试添加" Origin"请求的头部(来自A.com)和一个" Access-Control-Allow-Origin"标题为允许跨域请求支持的服务器(B.com)响应:

请求:

<cfheader name="Origin" value="#cgi.server_name##cgi.script_name#">

响应:

<cfheader name="Access-Control-Allow-Origin" value="*"> 
.. or ...
<cfheader name="Access-Control-Allow-Origin" value="B.com/myfile.js,cfm,whatevs...would match the result of CGI vars above ^">