【问题标题】:Sandbox Payflow Gateway API call times outSandbox Payflow Gateway API 调用超时
【发布时间】:2018-06-14 00:49:57
【问题描述】:

我按照指南 for Payflow hosted pages 并尝试了 demo (.zip file) 一切都在处理前几个 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);
}

有人经历过吗?

【问题讨论】:

    标签: paypal paypal-sandbox


    【解决方案1】:

    由于您使用的是主机端口 80,这很可能是您的连接超时的原因。确保端口 443 已打开。
    下面是Payflow的基本连接参数信息:

    https://developer.paypal.com/docs/classic/payflow/integration-guide/#payflow-connection-parameters

    HOSTPORT(必需)使用端口 443。

    谢谢,
    詹妮弗

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-22
      • 2017-04-06
      • 1970-01-01
      • 2016-07-21
      • 2014-06-16
      • 2012-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多