我已經看到了這個問題的一些建議,但沒有一個幫助到目前爲止。我有這個簡單的小班制作cURL電話,這肯定是因爲我已經嘗試過與其他主持人通話。這裏是類:PayPal curl調用沒有回覆使用PHP
class CurlHelper
{
public static function Post($URL, $Fields = array(), $DieExplainError = false)
{
return self::Call(array(
CURLOPT_URL => $URL,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => count($Fields),
CURLOPT_POSTFIELDS => http_build_query($Fields)
), $DieExplainError);
}
public static function Call($Array, $DieExplainError = false)
{
$ch = curl_init();
curl_setopt_array($ch, $Array);
$Result = curl_exec($ch);
if($DieExplainError && curl_error($ch))
die(curl_error($ch));
curl_close($ch);
return $Result;
}
}
這只是意味着我可以指定主機和值的數組張貼和任何它的響應是Post方法的回報。
那麼對於我的PayPal電話我做了以下內容:
$Response = CurlHelper::Post("https://api-3t.sandbox.paypal.com/nvp", array(
CURLOPT_HEADER => false,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
"USER" => "user",
"PWD" => "pass",
"SIGNATURE" => "sig",
"METHOD" => "SetExpressCheckout",
"VERSION" => 86,
"PAYMENTREQUEST_0_PAYMENTACTION" => "SALE",
"PAYMENTREQUEST_0_AMT" => 19,
"PAYMENTREQUEST_0_CURRENCYCODE" => "GBP",
"cancelUrl" => "myurl",
"returnUrl" => "myurl"
), true);
die("test: ".print_r($Response));
至於我可以看到至少應該回報些什麼呢?即使這是一個錯誤,但我什麼也得不到。
我有沒有瘋掉?
- 編輯 -
吳拉姆·阿里的評論後,他指出,我經過CURLOPT參數進入後陣列,而不是實際的捲曲選項。所以我做了這些變化:
CurlHelper POST方法:
public static function Post($URL, $Fields = array(), $DieExplainError = false)
{
return self::Call(array(
CURLOPT_URL => $URL,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_POST => count($Fields),
CURLOPT_POSTFIELDS => http_build_query($Fields)
), $DieExplainError);
}
貝寶電話:
$Response = CurlHelper::Post("https://api-3t.sandbox.paypal.com/nvp", array(
"USER" => "",
"PWD" => "",
"SIGNATURE" => "",
"METHOD" => "SetExpressCheckout",
"PAYMENTREQUEST_0_PAYMENTACTION" => "SALE",
"PAYMENTREQUEST_0_AMT" => 19,
"PAYMENTREQUEST_0_CURRENCYCODE" => "GBP",
"cancelUrl" => "",
"returnUrl" => ""
), true);
但不幸的是我仍然得到SSL錯誤。說了些什麼是非常合情合理的,但不知何故仍然沒有工作:(
echo'捲曲錯誤:'。 curl_error($ CH);在curl關閉前粘貼代碼並知道錯誤 – JYoThI
Ooo,我忘了你可以這樣做......我得到「SSL連接錯誤」..可能這是因爲我是從「dev服務器」這樣做可公開訪問還是不會造成影響? – Zephni