2013-02-14 94 views
0

我想通过jQuery和Ajax(websockets不可能)将JSON数据从客户端发送到我的Node.js服务器并获得JSON响应。我通过POST来做到这一点,但由于Node.js服务器与Apache服务器(它提供了我的客户端网站)分开运行,jQuery由于同源策略而回退到GET消息。与Node.js的双向通信

解决这个问题的最佳方法是什么?

+0

服务器上启用CORS,或者把javascript的节点服务器上。 – mpm 2013-02-14 16:50:04

+1

查看[同源策略](https://developer.mozilla.org/en-US/docs/JavaScript/Same_origin_policy_for_JavaScript)上的MDN页面,尤其是“*更改源*”和[CORS](https ://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS)。对于后者,还请注意[浏览器支持](http://caniuse.com/#feat=cors)。否则,可以在Apache服务器中实现代理脚本,以便在浏览器和Node.js之间传递消息,或者合并到单个服务器/源。 – 2013-02-14 16:52:11

回答

0

要启用CORS,在Node.js的文件中添加cors

var cors = require('cors'); 
app.use(cors());