модуль ActionCable::Helpers::ActionCableHelper
Публичные методы экземпляра
# File actioncable/lib/action_cable/helpers/action_cable_helper.rb, line 34
def action_cable_meta_tag
tag "meta", name: "action-cable-url", content: (
ActionCable.server.config.url ||
ActionCable.server.config.mount_path ||
raise("No Action Cable URL configured -- please configure this at config.action_cable.url")
)
end Возвращает мета-тег «action-cable-url» со значением URL, указанным в вашей конфигурации. Убедитесь, что он расположен над тегом JavaScript:
<head> <%= action_cable_meta_tag %> <%= javascript_include_tag 'application', 'data-turbo-track' => 'reload' %> </head>
Это используется Action Cable для определения URL вашего WebSocket-сервера. Ваш JavaScript сможет подключаться к серверу, не указывая URL напрямую:
import Cable from "@rails/actioncable"
window.Cable = Cable
window.App = {}
App.cable = Cable.createConsumer()
Убедитесь, что вы указываете правильное расположение сервера в каждом из ваших файлов конфигурации окружения:
config.action_cable.mount_path = "/cable123" <%= action_cable_meta_tag %> would render: => <meta name="action-cable-url" content="/cable123" /> config.action_cable.url = "ws://actioncable.com" <%= action_cable_meta_tag %> would render: => <meta name="action-cable-url" content="ws://actioncable.com" />
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.