STEP - 1
我正在使用CURL发送一个xml请求,并向我返回“ TOKEN ”。请在此处找到以下代码:
<root><request><type>mykey</type><username>myusername</username><password>mypassword</password></request></root>
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $curl_url);// passing API URL here
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $xml_strign); // passing xml as a string
$result = curl_exec ($curl_handle);
在上面的代码执行正常并返回令牌作为结果。
STEP - 2
在第二步中,我必须发送上面的令牌来获取我的结果但没有得到结果。请找到以下代码:
$xml = "<root>
<request>
<type>myparam</type>
<token>lGcvdOnetuxK0paE+AIxE93GB85DURIpOeoBw8quqOs=</token>
</request>
</root>";
curl_setopt($curl_handle, CURLOPT_URL, $curl_url);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, $xml);
$result = curl_exec ($curl_handle);
curl_close ($curl_handle);
print_r($result);
可能是这个令牌包含我想的特殊章程,所以我没有得到结果。我在浏览器中看到了控制台网址响应状态200 ok。
我非常感谢您的帮助。
答案 0 :(得分:1)
我认为您的帖子数据存在问题。您应该在这里阅读有关CURLOPT_POSTFIELDS的详细信息:
http://php.net/manual/fr/function.curl-setopt.php
所以你的xml变量应该像这样定义:
$xml = array("token" => "lGcvdOnetuxK0paE+AIxE93GB85DURIpOeoBw8quqOs");
至少它应该是一个数组。