Я создаю API-интерфейс сокета в Rails с помощью кабеля действия.Затем я использую дополнение Chrome для отправки запроса на тестирование.Я получил эту ошибку:
Успешно обновлен до WebSocket (REQUEST_METHOD: GET, HTTP_CONNECTION: Upgrade, HTTP_UPGRADE: websocket) Не удалось выполнить команду из ({"command" => "message", "data"=> "{}", "identifier" => "{\" channel \ ": \" ApiChannel \ "}"}) [RuntimeError - Невозможно найти подписку с идентификатором: {"channel": "ApiChannel"}]:/home/lin/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/actioncable-5.1.5/lib/action_cable/connection/subscription.rb:76:in find' |
/home/lin/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/actioncable-5.1.5/lib/action_cable/connection/subscriptions.rb:53:in
execute_action '|/home/lin/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/actioncable-5.1.5/lib/action_cable/connection/subscription.rb:17:in execute_command' |
/home/lin/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/actioncable-5.1.5/lib/action_cable/connection/base.rb:85:in
dispatch_websocket_message '|/home/lin/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/actioncable-5.1.5/lib/action_cable/server/worker.rb:58:in `block in invoke '
Вот мой канал:
class MessagesChannel < ApplicationCable::Channel
def subscribed
stream_from "messages"
end
def unsubscribed
# Any cleanup needed when channel is unsubscribed
end
def chat data
Message.create! content: data['content']
ActionCable.server.broadcast 'messages',
message: message.content
end
end
Если у вас есть опыт с этим, пожалуйста, помогите мне найти решение.