我遵循了指南对于托管的Payflow页面,并尝试了演示(.zip文件) --一切都在处理最初的几个cURL请求。现在,端点https://pilot-payflowpro.paypal.com总是返回超时:
Failed to connect to port 80: Connection timed out这是引发此错误的代码:
// run_payflow_call: Runs a Payflow API call. $params is an associative array of
// Payflow API parameters. Returns FALSE on failure, or an associative array of response
// parameters on success.
function run_payflow_call($params) {
global $environment;
$paramList = array();
foreach($params as $index => $value) {
$paramList[] = $index . "[" . strlen($value) . "]=" . $value;
}
$apiStr = implode("&", $paramList);
// Which endpoint will we be using?
if($environment == "pilot" || $environment == "sandbox")
$endpoint = "https://pilot-payflowpro.paypal.com/";
else $endpoint = "https://payflowpro.paypal.com";
// Initialize our cURL handle.
$curl = curl_init($endpoint);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
// If you get connection errors, it may be necessary to uncomment
// the following two lines:
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, $apiStr);
$result = curl_exec($curl);
if($result === FALSE) {
echo curl_error($curl);
return FALSE;
}
else return parse_payflow_string($result);
}有人经历过吗?
发布于 2018-01-12 21:55:14
由于您使用的是主机端口80,这很可能是导致连接超时的原因。确保端口443是开放的。
下面是有关Payflow的基本连接参数的信息:
https://developer.paypal.com/docs/classic/payflow/integration-guide/#payflow-connection-parameters
HOSTPORT (必需)使用端口443。
谢谢,
詹妮弗
https://stackoverflow.com/questions/48092743
复制相似问题