我正在尝试在php中进行支付网关集成。当我做测试模式从本地支付过程付款工作正常。我已成功重定向到我的付款页面。我已使用CURL将数据发布到付款网关服务器。
但是上传到服务器后我无法付款。我收到以下错误。 SSL连接错误(35)
我的代码如下。
$request_url= "https://mypaymentserver.com"
$url = $request_url;
$successurl = url::site('payment/textpartnerssuccess', 'http');
$processurl = url::site('payment/textpartnersprocess', 'http');
$failurl = url::site('payment/textpartnersfail', 'http');
//Data bind
$invoiceno = commonfunction::randomkey_generator();
$postData = array(
"url_succesfull" => $successurl,
"url_process" => $processurl,
"url_cancel" => $failurl,
"item_id" => $jobid,
"name" => $jobdetails[0]['job_title'],
"currency" => $this->textpartners_currencycode,
"price" => $amount,
"token" => $invoiceno,
"seller_op_id" => time(),
"shipping_cost" => 0
);
$data = http_build_query($postData, NULL, '&');
// Create a new curl instance
$curl = curl_init();
// Set curl options
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_POST => TRUE,
CURLOPT_POSTFIELDS => $data,
CURLOPT_SSL_VERIFYPEER => FALSE,
CURLOPT_SSL_VERIFYHOST => FALSE,
CURLOPT_RETURNTRANSFER => TRUE,
));
if (($response = curl_exec($curl)) === FALSE)
{
// Get the error code and message
$code = curl_errno($curl);
$error = curl_error($curl);
curl_close($curl);// Close curl
echo $error_msg = 'Payment API request for failed: '.$error.'(' .$code.')'; exit;
Message::error($error_msg);
// Parse the response
parse_str($response, $data);
}
curl_close($curl); // Close curl
// Parse the response
parse_str($response, $data);
任何人都可以帮助我吗?在此先感谢:)
答案 0 :(得分:0)
但是上传到服务器后我无法付款
当客户端无法连接到SSL服务器时(由于超时或协议错误),将报告错误35。检查服务器是否可以解析名称,与指定主机建立传出连接,以及是否跨端口443建立传出连接。
答案 1 :(得分:0)
谢谢你们。最后,我通过在curl中添加以下行来获得解决方案。
curl_setopt($ ch,CURLOPT_SSL_CIPHER_LIST,'rsa_rc4_128_sha');