我将编写一个应用程序,对从RESTful Web服务获取的数据进行一些计算并输出到文本文件和/或HTML页面。 Web服务是基于HTTP的XML。我用LWP :: Simple和XML :: Simple做了一个简单的概念验证,但它有点特别。
有人可以推荐一些Perl模块或最佳实践来以这种方式与RESTful Web服务交互吗?是否有一个模块可以处理我的所有细节(发出请求+处理响应),或者问题域是否过于笼统?
请注意,Web服务是基于HTTP的XML,但我希望最终必须使用HTTP GET,POST和HEAD。我认为如果它变得更简单,我可以选择请求JSON而不是XML。
提前致谢。
答案 0 :(得分:13)
我使用LWP::Simple,LWP::UserAgent,Mojo::UserAgent或WWW::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;