我已经构建了一个REST服务器,现在我想使用REST :: Client模块从Perl客户端快速测试它.
如果我执行GET请求(在URL中显式设置参数),它工作正常,但我无法弄清楚如何在POST请求中设置这些参数.
这就是我的代码的样子:
#!/usr/bin/perl use strict; use warnings; use REST::Client; my $client = REST::Client->new(); my $request_url = 'http://myHost:6633/my_operation'; $client->POST($request_url); print $client->responseContent();
我尝试过类似的东西:
$client->addHeader ('my_param','my value');
但这显然是错误的,因为我不想设置HTTP预定义标头而是设置请求参数.
谢谢!
解决方法
这很直截了当.但是,您需要知道服务器期望的内容类型.这通常是XML或JSON.
F.ex.这适用于可以理解第二个参数中JSON的服务器,如果你告诉它在第三个参数的标题中是什么.
$client->POST('http://localhost:3000/user/0/','{ "name": "phluks" }',{ "Content-type" => 'application/json'});