gpt4 book ai didi

perl - 如何在 Catalyst 中限制对 POST 的请求

转载 作者:行者123 更新时间:2023-12-04 23:28:52 24 4
gpt4 key购买 nike

我对 Catalyst 很陌生,刚刚开始构建一个网络应用程序来学习一些东西。

我还没有弄清楚的一件事是如何将对给定 Controller 方法的请求限制为 POST(例如)。

一个具体的例子是,将触发在数据库中创建对象的请求。因为我希望这个应用程序对 REST 动词非常严格,所以这只能通过 POST 实现。

我知道我可以使用
$c->方法
检查请求中使用的方法,如果我没有找到我正在寻找的东西,则返回错误或类似的东西,但我希望有一种......更清洁的方式。

现在我有类似的东西

sub create :Local :Args(0) {
...
}

我是否注定要检查子例程中的方法,并且对每个方法都这样做?

请记住,我对 Catalyst 非常陌生,所以这可能是一个愚蠢的问题。

谢谢您的帮助!

最佳答案

您可以使用 Catalyst::Controller::REST模块。

sub thing : Local : ActionClass('REST') { }

# Answer POST requests to "thing"
sub thing_POST {
my ( $self, $c ) = @_;

# Return a 200 OK, with the data in entity
# serialized in the body
$self->status_ok(
$c,
entity => {
some => 'data',
foo => 'is real bar-y',
},
);
}

关于perl - 如何在 Catalyst 中限制对 POST 的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8072184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com