如何使用氮将翻译后的 URL 路由到模块

发布于 2024-10-15 01:44:30 字数 265 浏览 5 评论 0原文

我曾经用英语进行开发,但这次,我正在构建的网络应用程序仅适用于我所在城市(法国)的人们。

在氮中,当你调用“/user/login”时,氮会调用user_login:main()。 我希望在请求为“/utilisateur/connexion”时,氮能调用 user_login:main() 。

我希望在请求为“/annonces/personnes”等时,氮气能够调用 ads_people:main() 。

有没有办法正确实现这一点?

非常感谢!

I used to develop in English, but this time, the webApp i'm building is only for people in my city, which is in France.

In nitrogen, when you call "/user/login", nitrogen calls user_login:main().
I would like nitrogen to call user_login:main() when the request is "/utilisateur/connexion".

I would like nitrogen to call ads_people:main() when the request is "/annonces/personnes", etc.

Is there a way to achieve that properly ?

Many thanks !

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

岁月无声 2024-10-22 01:44:30

您可以使用 Nitrogen 的named_route_handler 插件轻松完成此操作。步骤是:

  1. 在调用 Nitrum:run() 之前插入以下行:

    wf_handler:set_handler(named_route_handler, get_routes())。
    
  2. 添加 get_routes/0 函数:

    get_routes() ->; [
        {“/utilisateur/connexion”,user_login},
        {"/annonces/personnes", annonces_persons},
        ETC...
    ]。
    

    元组中的第一个元素是 URL 中的路径,第二个是将处理具有该路径的请求的相应模块的名称。

You can do this easily by using Nitrogen's named_route_handler plugin. Steps are:

  1. Insert following line before call to nitrogen:run():

    wf_handler:set_handler(named_route_handler, get_routes()).
    
  2. Add get_routes/0 function:

    get_routes() -> [
        {"/utilisateur/connexion", user_login},
        {"/annonces/personnes", annonces_persons},
        etc...
    ].
    

    First element in a tuple is the path in URL and the second is the name of the corresponding module which will handle requests with such path.

泪痕残 2024-10-22 01:44:30

在 Nitrogen 前面使用代理(例如 nginx)来进行这种 URL 重写。

或者,如果您想在纯氮气中进行操作,请查看 src/handlers/route/named_route_handler.erl 中的一些文档

Use a proxy in front of Nitrogen like nginx to do that kind of URL rewriting.

Altrernatively, check out some of the documentation in src/handlers/route/named_route_handler.erl if you wanted to do it in pure nitrogen

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文