将websocket origin设置为localhost javascript

时间:2016-06-17 21:55:49

标签: javascript websocket cors

我有doamin example.com的服务器。当用户在此服务器上加载页面时,它使用javascrip上的websocket客户端连接另一个websocket服务器。 另一台服务器使用CORS。因此用户无法使用websocket连接到另一台服务器,因为标题来源:example.com。但是使用Origin:localhost它可以连接。 当使用javascript连接websocket时,是否可以设置Origin:localhost?

2 个答案:

答案 0 :(得分:0)

创建请求时,浏览器会添加Origin标头。您无法指定自定义值,也无法使用javascript进行更改。为什么你说用户无法连接到服务器? Websockets支持跨域。如果服务器正在检查Origin,那么更容易更改代码以允许example.com。

答案 1 :(得分:0)

我认为有两种方法可以正常

  1. 你可以在"另一个websocket服务器"添加代码:
  2. res.setHeader("Access-Control-Allow-Origin","*");

    如果你不能这样做,你可以用另一种方式。

    1. 反向代理可能是一个选择,但我认为这不是一个简单的方法。 您可以使用nginx来实现反向代理。