Catalyst链接路由“循环”

时间:2013-03-25 07:31:52

标签: perl catalyst chained

我遇到了一个我无法解决的问题,希望你能提供帮助:)

我已经使用Web界面构建了一个CataPLACK-Application。现在我应该建立一个JSON / REST / XML-Api,所以我想我可以这样做:

/ => root
/blog/ => ... 
/news/ => ...
/api =>chainedTo(root) PathPart(api) Args(1) { set_view($arg) };

如何将api循环回root(/),这样我就可以用不同的视图重新发送整个请求,而不必建立很多“假例程”?

我觉得必须有一个干净的方式......

1 个答案:

答案 0 :(得分:0)

查看手册中$c->forward / $c->detach$c->visit / $c->go之间的差异。我想你会发现你可以在你的api方法中构建一个$c->go()构造来实现你所追求的目标。

但它仍然有点混乱,特别是如果你必须手动将URI重新引用回动作。

通过在末尾添加“api”路径部分而不是从头开始,您可以通过添加更少的麻烦来实现相同的效果,因此它只是您可以在{{1}中测试的请求的参数sub,并设置你需要的任何存储变量。然后您不需要进行任何重新调度。只有您可以决定这样的URI方案是否足够干净且适合您的应用程序。