首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >列出Phoenix API

列出Phoenix API
EN

Stack Overflow用户
提问于 2018-02-13 02:24:39
回答 1查看 177关注 0票数 2

我想有一个端点/api/api_endpoints/,其中列出了所有的公共api端点。与mix phx.routes类似,但我只想列出如下内容

代码语言:javascript
复制
...
GET /api/users
PUT /api/users/name
...

诸如此类的事情。我查看了文档,但没有看到任何列出路由的内容。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-13 04:26:32

没有内置的东西,但是对于像你想要的那样简单的东西,你总是可以使用你自己的。所有路由都以Phoenix.Router.Route结构列表的形式存储在路由器中。例如,在一个名为Residential的项目中

代码语言:javascript
复制
iex(1)> ResidentialWeb.Router.__routes__
[%Phoenix.Router.Route{assigns: %{}, helper: "page", host: nil, kind: :match,
opts: :index, path: "/", pipe_through: [:browser],
plug: ResidentialWeb.PageController, private: %{}, verb: :get},
%Phoenix.Router.Route{assigns: %{}, helper: "user", host: nil, kind: :match,
opts: :index, path: "/users", pipe_through: [:browser],
plug: ResidentialWeb.UserController, private: %{}, verb: :get},
%Phoenix.Router.Route{assigns: %{}, helper: "user", host: nil, kind: :match,
opts: :edit, path: "/users/:id/edit", pipe_through: [:browser],
plug: ResidentialWeb.UserController, private: %{}, verb: :get},

您可以将它们映射到它们上,提取verbpath并按您的喜好显示它们。

如果你使用take a look at the implementation,这就是mix phx.routes的工作原理

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48753081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档