我使用的是Phoenix Chat Room Example,並且在路由方面存在一些問題。如何刪除通過鳳凰城的運輸路線?
裏面的user_socket.ex
文件:
defmodule Chat.UserSocket do
use Phoenix.Socket
channel "rooms:*", Chat.RoomChannel
transport :websocket, Phoenix.Transports.WebSocket
def connect(_params, socket) do
{:ok, socket}
end
def id(_socket), do: nil
end
我的問題是transport
配置下。
transport :websocket, Phoenix.Transports.Websocket
建立一個運輸基本上像一個目錄。要通過此套接字進行連接,客戶端在URL
的末尾必須有/websocket
。我試圖優雅地刪除它。我試圖讓我的websocket服務器被server:port
訪問,沒有目錄要求。
我發現Chat.UserSocket
模塊從lib/chat/endpoint.ex
稱爲:
socket "/Balancer", Chat.UserSocket
此socket
也增加另一個必需的目錄。因此,要連接到websocket
服務器,您需要將/Balancer/websocket
附加到URL。我正在嘗試刪除該要求。我可以縮短這個詞,並使用B/W
,但這看起來很不直觀。另外,我對Elixir/Phoenix相當陌生,所以我對這個草率的問題表示歉意。