微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

perl – 有没有办法让多个链在Catalyst中共享同一个端点?

我是一个催化剂新手,我试图让多个链访问相同的端点(‘description’子例程),例如:
/object/fetch_by_id/*/description
/object/fetch_by_name/*/description
/object/fetch_by_xref/*/description

例如,我不想为3个单独的端点编写代码,而是允许在三个不同的链接操作之间共享端点.我正在包装后端API,在此示例中,可以通过不同的方法检索对象.

理想的解决方案是:

sub description : Chained('fetch_by_id','fetch_by_name','fetch_by_xref') PathPart('description') Args(0) ActionClass('REST') {
    # code here
}

或者我可以为每个链都编写不同的描述子,它们都称为通用描述子例程,但任何更优雅的解决方案都会很棒!任何帮助应该非常感谢!

解决方法

您是否考虑过将您现有的潜艇重构为:
/object/fetch/id/*/description
/object/fetch/name/*/description
/object/fetch/xref/*/description

您可能会发现可以同时解决端点问题并减少现有代码:让’fetch’接受两个参数:lookup-method和value,以及链描述到最后.

原文地址:https://www.jb51.cc/Perl/171874.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐