Perl “催化剂链路由”;“循环”;

Perl “催化剂链路由”;“循环”;,perl,catalyst,chained,Perl,Catalyst,Chained,我有个问题还没解决,希望你能帮我:) 我已经构建了一个带有web界面的CataPLACK应用程序。现在我应该建立一个JSON/REST/XML Api,所以我想我可以这样做: / => root /blog/ => ... /news/ => ... /api =>chainedTo(root) PathPart(api) Args(1) { set_view($arg) }; 我如何将api循环回根(/),这样我就可以用不同的视图重新修补整个请求,而不必建立很多“假

我有个问题还没解决,希望你能帮我:)

我已经构建了一个带有web界面的CataPLACK应用程序。现在我应该建立一个JSON/REST/XML Api,所以我想我可以这样做:

/ => root
/blog/ => ... 
/news/ => ...
/api =>chainedTo(root) PathPart(api) Args(1) { set_view($arg) };
我如何将api循环回根(/),这样我就可以用不同的视图重新修补整个请求,而不必建立很多“假例程”


我觉得必须有一个干净的方法…

看看手册中
$c->forward
/
$c->detach
$c->visit
/
$c->go
之间的区别。我想您会发现,您可能可以从api方法中构建一个
$c->go()
构造来实现您所追求的目标

不过这仍然有点混乱,特别是当您必须手动将URI反引用回某个操作时


通过在末尾而不是开头添加“api”路径部分,您可以轻松地实现相同的效果,因此它只是请求的一个参数,您可以在
auto
sub中进行测试,并设置所需的任何隐藏变量。那么你就不需要做任何重新调度了。只有您可以决定这样的URI方案是否足够干净,是否适合您的应用程序。

Andreas,设置您的个人资料信息,我希望我们知道您的姓名。