查看源代码 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 服务器与自定义处理程序一起使用。例如,要处理原始 WebSockets 如 Cowboy 文档中所示)。

这些选项传递给端点配置中的 :http:https 键。但是,一旦您传递了自定义调度选项,您将需要通过添加以下规则来手动连接 Phoenix 端点

{:_, Plug.Cowboy.Handler, {MyAppWeb.Endpoint, []}}

例如

config :myapp, MyAppWeb.Endpoint,
  http: [dispatch: [
          {:_, [
              {"/foo", MyAppWeb.CustomHandler, []},
              {:_, Plug.Cowboy.Handler, {MyAppWeb.Endpoint, []}}
            ]}]]

同样重要的是先指定您的处理程序,否则 Phoenix 会在请求到达您的处理程序之前拦截它们。

摘要

函数

链接到此函数

server_info(endpoint, scheme)

查看源代码