Php 理解旋度有困难

Php 理解旋度有困难,php,curl,Php,Curl,我需要传递一个URL,以便从供应商的服务器检索库存可用性。在地址栏中输入以下url时,我会在浏览器中收到预期的响应: https://stage-elink2.unitedstationers.com/iLink2/InterlinkDirect.asp?RequestTransmission=OE01XXX DL2003-02-0616:32:16000100363XXXXXX 001039XXXXXX9 AMFXXXXXX ACC11038

我需要传递一个URL,以便从供应商的服务器检索库存可用性。在地址栏中输入以下url时,我会在浏览器中收到预期的响应:

https://stage-elink2.unitedstationers.com/iLink2/InterlinkDirect.asp?RequestTransmission=OE01XXX            DL2003-02-0616:32:16000100363XXXXXX   001039XXXXXX9        AMFXXXXXX   ACC11038       N&RequestType=3
“X”代表我的用户ID和密码信息。空格表示将来使用的字段

我正在尝试使用cURL使上面的字符串工作,但我不确定如何做到这一点。这就是我目前所拥有的。我没有得到任何回应,我也不知道如何检查错误,或者逐步检查问题所在

我的php代码:

$url = "https://stage-elink2.unitedstationers.com/iLink2/InterlinkDirect.asp";

$post_data = "RequestTransmission=OE01XXXX            DL2003-02-  0616:32:16000100363XXXXXX   001039XXXXXX9        AMFXXXXXX   ACC11038       N&RequestType=3";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
感谢您的帮助。谢谢。

尝试使用GET:

$url = "https://stage-elink2.unitedstationers.com/iLink2/InterlinkDirect.asp?RequestTransmission=OE01XXX DL2003-02-0616:32:16000100363XXXXXX 001039XXXXXX9 AMFXXXXXX ACC11038 N&RequestType=3";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

curl_close($ch);

echo $result;

经过进一步研究,我发现下面的解决方案是可行的

真正帮助解释了如何使用cURL

我收到的SSL错误帮助(错误#60-cURL错误:SSL证书问题,请验证CA证书是否正常)


您的代码和地址栏之间的一个区别是,浏览器使用get请求您的URL,而php代码有助于POST。
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_USERPWD, "userid:password"); //replace with usedid:password
curl_setopt ($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 3);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $post_string); 
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 1);  //solved SSL error message
curl_setopt ($ch, CURLOPT_CAINFO, "cacert.pem");  //solved SSL error message
$result = curl_exec($ch);  
curl_close($ch);
echo $result;