哪个Perl模块适合编写RESTful Web API客户端?

时间:2009-03-22 00:40:11

标签: perl rest module

我将编写一个应用程序,对从RESTful Web服务获取的数据进行一些计算并输出到文本文件和/或HTML页面。 Web服务是基于HTTP的XML。我用LWP :: Simple和XML :: Simple做了一个简单的概念验证,但它有点特别。

有人可以推荐一些Perl模块或最佳实践来以这种方式与RESTful Web服务交互吗?是否有一个模块可以处理我的所有细节(发出请求+处理响应),或者问题域是否过于笼统?

请注意,Web服务是基于HTTP的XML,但我希望最终必须使用HTTP GET,POST和HEAD。我认为如果它变得更简单,我可以选择请求JSON而不是XML。

提前致谢。

3 个答案:

答案 0 :(得分:13)

我使用LWP::SimpleLWP::UserAgentMojo::UserAgentWWW::Mechanize完成大部分工作。 REST的东西只是选择正确的URL来发送请求。获得响应后,CPAN上有大量模块来处理XML或JSON。我特别喜欢Mojo,因为它带有自己的JSON和DOM解析器和工具。

答案 1 :(得分:2)

REST::Client很好。 Atlassian有一篇Writing a REST Client in Perl文章。

答案 2 :(得分:-1)

最好是使用REST :: Client 要么 对于非生产,可以在Perl中使用curl(unix命令)。 例如:

    #!/usr/bin/perl
    $\="\n";
    $s=`curl -s --request GET --url https://api.thedogapi.com/v1/images/search`;
    print $s;