我有一个将请求转发到其他路由器的路由器模块。在这个路由器中,我有一个由plug(:match)
和组成的管道plug(:dispatch)
。
defmodule Example.Router do
use Plug.Router
plug(:match)
plug(:dispatch)
forward("/check", to: Example.Route.Check)
get("/", do: send_resp(conn, 200, "router"))
end
在第二个模块中,我有相同的管道:
defmodule Example.Route.Check do
use Plug.Router
plug(:match)
plug(:dispatch)
get "/", do: send_resp(conn, 200, "ok")
end
我在这里看到的问题是我似乎总是需要plug(:match)
并且plug(:dispatch)
在所有Plug
路由器中。所以我有以下问题:
- 这真的有必要吗?
- 是否所有路由器都需要在具有路由的同一文件中具有管道?