我需要发送以下请求,它是在 xml 末尾带有用户名和密码的 XML。当我粘贴到浏览器中时,我可以让它作为 URL 工作:
URL?XML=<>...</>&user=123456&password=123456
但是当我尝试创建 curl 调用时,它说这是一个无效的 XML 请求。
我尝试在 POSTFIELDS 中使用用户和密码。我还尝试在 $trial ='&user=123456&password=123456' 之前将它们设置为变量,但似乎仍然无法正常工作。
$xml = <<<ENDOFXML
<?xml version="1.0" encoding="UTF-8"?><xmldata>...</xmldata>
ENDOFXML;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'xml='.urlencode($xml).urlencode('&user=123456&password=123456'));
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_close($ch);