檢視原始碼 Phoenix.Endpoint.Cowboy2Adapter (Phoenix v1.7.14)
Phoenix 的 Cowboy2 轉接器。
端點設定
此轉接器會使用以下端點設定
:http
- HTTP 伺服器的設定。它接受Plug.Cowboy
定義的所有選項。預設值為false
:https
- HTTPS 伺服器的設定。它接受Plug.Cowboy
定義的所有選項。預設值為false
:drainer
- 排水器程序是當應用程式關閉時觸發,用於等待任何進行中的要求結束。它接受Plug.Cowboy.Drainer
定義的所有選項。預設值為[]
,這會為每個已設定的端點啟動一個排水器程序,但可以將其設定為false
以停用。
自訂調度選項
你可以提供自訂調度選項來使用 Phoenix 內建的 Cowboy 伺服器與自訂處理常式。例如,處理原始 WebSocket 如 Cowboy 文件所示)。
這些選項傳遞到端點設定中的 :http
和 :https
金鑰。然而,一旦你傳遞自訂調度選項,你將需要透過新增下列規則手動連接 Phoenix 端點
{:_, Plug.Cowboy.Handler, {MyAppWeb.Endpoint, []}}
例如
config :myapp, MyAppWeb.Endpoint,
http: [dispatch: [
{:_, [
{"/foo", MyAppWeb.CustomHandler, []},
{:_, Plug.Cowboy.Handler, {MyAppWeb.Endpoint, []}}
]}]]
指定你的處理常式也很重要,否則 Phoenix 會在要求傳送到你的處理常式前攔截它們。