我正在尝试使用Qualys API v2来获取返回的xml主机列表。我想你一定是用cURL了,但我不太熟悉它。下面是我的代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_URL, "https://qualysapi.qualys.com/api/2.0/fo/asset/host/?action=list&details=Basic");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-Requested-With: Manitowoc Service Account'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$xml = curl_exec($ch);
curl_close();
$hostobj = simplexml_load_string($xml);发布于 2012-07-24 10:08:48
实际上,QualysGuard应用编程接口调用不需要curl。只要您可以进行https调用,您就可以使用任何您喜欢的方法。但是curl是一个很好的框架,因为一切都已经实现了(对于perl,另一个替代方案是LWP)。
我没有找到您的代码中的问题,但是我发布了一个perl脚本,该脚本通过发出API请求"using WWW::Curl::Easy":https://community.qualys.com/docs/DOC-3222来启动和下载Qualys报告
我希望它能帮助您用libcurl编写自己的perl API请求。
发布于 2012-07-24 15:56:19
我看不出您的代码有什么问题,但是我们当然看不到您为用户名和密码使用了什么值,也看不到这些凭据是否确实存在于QualysGuard中。
要从curl获取给定请求的状态/错误信息,请使用in the cURL Manual中描述的curl_getinfo()、curl_error()和curl_errno()。
https://stackoverflow.com/questions/11619728
复制相似问题