1

我曾经用英语进行开发,但这次,我正在构建的 webApp 仅适用于我所在城市的人们,也就是法国。

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

当请求是“/annonces/personnes”等时,我希望氮调用 ads_people:main()。

有没有办法正确地实现这一目标?

非常感谢 !

4

2 回答 2

2

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

  1. 在调用nitrogen: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 中的路径,第二个元素是相应模块的名称,该模块将处理具有此类路径的请求。

于 2011-12-06T14:27:06.530 回答
0

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

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

于 2011-03-08T19:02:25.583 回答