我正在研究的网站是用Perl和Mason编写的,由Apache2(mod_perl)托管。 我正在寻找一个设计良好,易于使用的REST API“框架”,或者只是创建一个完善的方法。 Mojolicious不是一个选项,因为我在端口80上向Apache2发送请求。 我几乎找不到任何与谷歌有关的东西,而我发现的东西看起来很垃圾。 我要求那些在Perl和Mason中设计REST API的人展示一个很好的例子。
所以,我发现检查$r->method()
以查看使用的REST方法并相应地执行代码。如果这可能以某种方式写成这样的话会很好:
POST => sub {
...
}
GET => sub {
...
}
DELETE => sub {
...
}
这只是一个想法。
答案 0 :(得分:3)
梅森的目标是构建HTML页面。这是用于构建API的错误工具 - 它(可能)将返回JSON而不是HTML。
要构建API,您将创建数据结构,然后(希望)使用CPAN的一个JSON库将这些数据结构转换为JSON。在这个工作流程中,梅森真的没有地方。
我认为您不应该被限制为您的网站和API使用相同的技术。如果网站位于http://www.example.com/,那么您可以将API置于http://api.example.com/并使用完全不同的技术(甚至是不同的网络服务器)运行。
在不了解您的项目的情况下,很难提出更具体的建议。但是如果您有数据的DBIx :: Class类,那么查看WebAPI::DBIC就可以了 - 这比使用框架编写自己的代码容易得多。