你好堆垛机,
我正在尝试在我们的电子商务中实施 Apple Pay on Web。
我只是在处理商户身份证明问题。
我们使用 PHP 5.6 和 curl 调用 Apple Pay 验证以从 Apple 会话中获取 ApplePaySession。
我在 Apple Developer 控制台中创建了一个证书,我下载了该证书并将其添加到钥匙串中。导出 .p12 文件并通过以下命令创建两个文件:带有证书的 cert.pem 和带有私钥的 key.pem:
openssl pkcs12 -in applePayCert.p12 -out cert.pem -clcerts -nokeys
openssl pkcs12 -in applePayCert.p12 -out key.pem -nocerts -nodes
我通过 curl 调用 Apple 服务器
$data = json_encode([
'merchantIdentifier' => ADYENAPPLEPAY_APPLE_MERCHANT_IDENTIFIER,
'initiativeContext' => PRODUCTION_DOMAINNAME,
'displayName' => ADYENAPPLEPAY_APPLE_DISPLAY_NAME,
'initiative' => 'web',
]);
// create a new cURL resource
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $validationUrlFromApplePayJs);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_SSLCERT, PRODUCTION_CERTIFICATE_PATH);
curl_setopt($ch, CURLOPT_SSLKEY, PRODUCTION_CERTIFICATE_KEY);
$result = curl_exec($ch);
当我打电话
curl_error($ch)
我有
无法使用客户端证书(未找到密钥或密码错误?)
但我没有设置任何密码