Phoenix EXRM发布Websockets无法正常工作

时间:2015-09-15 15:14:36

标签: elixir phoenix-framework exrm

我试图用EXRM发布我的应用程序。整个应用程序正在工作,但无法启动的WebSockets

这是浏览器中的错误(Chrome)

  

与'ws:// localhost:4001 / socket / websocket?token = undefined'的WebSocket连接失败:WebSocket握手期间出错:意外响应代码:403

似乎变量token可能是个问题。 从Mix phoenix.server开始,这一切都很有效。但随着命令发布:

$ mix deps.get
$ mix compile
$ MIX_ENV=prod mix digest
$ MIX_ENV=prod mix release
$ ./rel/project/bin/project

可能是关于我错过了一些步骤的事情,还是凤凰相关问题。

1 个答案:

答案 0 :(得分:6)

似乎在prod.exs配置文件中url选项负责过滤websocket连接以仅允许来自域。因此,它只允许来自set url的连接,但不允许来自任何其他的连接,包括localhost

因此,要在本地测试版本,必须将url设置为:

url: [host: "127.0.0.1", port: 4001],