我想使用php和curl向web服务器发送请求。虽然网上有很多好的例子,但我仍然对一些curl命令不太理解,因为我以前从未做过这样的事情。
我的目标是:有一个已经建立好的网络服务(例如:Web地图服务),我想让我的php代码向该服务发送一个post XML请求,并作为响应获取一个XML文件。
到目前为止,我所拥有的是:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '');
/*curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));*/
/* curl_setopt($ch, CURLOPT_HEADER, 0);*/
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
/*curl_setopt($ch, CURLOPT_REFERER, '');*/
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$ch_result = curl_exec($ch);
curl_close($ch);
echo $ch_result;
正如我所说,我在PHP和使用Curl方面都比较新手,我认为我缺少一些概念。 我的问题是: 1)我需要放入什么字符串(链接):
curl_setopt($ch, CURLOPT_URL, '');
我需要发送请求的服务的主机名是什么?
2) 在第6行中,变量$xml包含我想要作为请求发送的xml文件。这正确吗?还是这个变量应该包含其他内容?
3) 在哪些情况下需要使用httpheader或header (第3行和第4行)?
感谢您的帮助。 Dimitris