我刚从足够学习的网站上完成了动作电缆教程。一切都在开发中工作正常,但在部署到heroku后,动作电缆不起作用。我已确保执行以下操作:
(1)cable / yml
adapter: redis
url: <%=ENV['REDISTOGO_URL']%>
(2)production.rb
config.action_cable.url = 'wss://myurl.herokuapp.com/cable'
config.action_cable.allowed_request_origins = [
'https://myurl.herokuapp.com', /http://myurl.herokuapp.com.*/]
(3)路线 -
mount ActionCable.server, at: '/cable'
(4)将redis添加到heroku中的插件
Heroku日志显示以下错误:
无法升级到WebSocket(REQUEST_METHOD:GET,HTTP_CONNECTION:升级,HTTP_UPGRADE:websocket)
不允许请求来源:https://myurl.herokuapp.com
我没有在production.rb中指定允许的请求网址,现在它给出了这个错误吗?
我正在运行rails 5.0和ruby 2.3.1。感谢任何帮助。
答案 0 :(得分:0)
我想这个:
config.action_cable.allowed_request_origins = [
'https://myurl.herokuapp.com', /http://myurl.herokuapp.com.*/]
应该是这样的:
config.action_cable.allowed_request_origins = [
'https://myurl.herokuapp.com', 'http://myurl.herokuapp.com']