如何将所有GET请求路由到一个控制器功能

时间:2014-07-24 08:43:31

标签: playframework

是否可以在路径文件中定义所有类型的请求GET,POST,PUT等。 将由一个控制器处理?

GET /AlltypeOfUrl controllers.Application.getHendler(allParams) POST /AlltypeOfUrl controllers.Application.postHendler() DELETE /AlltypeOfUrl controllers.Application.deleteHandler(params)

2 个答案:

答案 0 :(得分:1)

您在寻找什么在 Routing 文档中描述为

跨越多个/

的动态部分

最简单的示例是(第二个用于捕获带有斜杠的URL,尽管应该处理in other way):

GET   /*allParams    controllers.Application.getHendler(allParams)
GET   /*allParams/   controllers.Application.getHendler(allParams)

答案 1 :(得分:0)

是的,上面的内容是允许的。

但是如果通过"所有类型的网址"你的意思是*,然后你假设可以做到这一点

GET      /*      controllers.Application.getHendler(allParams)
POST     /*       controllers.Application.postHendler()
DELETE   /*       controllers.Application.deleteHandler(params)

但是我想你不会想要托管任何静态内容(即javascript) - 你的公共文件夹变得无用,因为你的所有路由都通过你的自定义控制器。

如果你纯粹想要自己处理所有路由,那么是的,你可以。

您可以在此处找到有关路由的更多信息:http://www.playframework.com/documentation/2.2.x/ScalaRouting