我正在使用Apple Pay JS。我为我的网站创建了Apple Pay功能,该功能在iOS设备的Safari浏览器中一直运行良好,但在将iOS更新到最新版本iOS13后停止了工作。
问题是Apple Pay表不再出现在iOS13上。 我在日志中看不到任何错误。它启动Apple Pay会话,但不调用onvalidatemerchant及其后的任何内容。
在单击Apple Pay的按钮时,我具有以下方法
function makePayment()
{
var applePayRequest = sampleRequest;
var applePaySession = new ApplePaySession(1, applePayRequest)
applePaySession.onvalidatemerchant = function(event) {
log('validate merchant called');
// api service call with event.validationUrl to get the session data
};
applePaySession.onPaymentAuthorized = function(event) {
log('on payment authorized called');
// get payment token and call api service with details for
// payment processing
};
log('begin Apple Pay session');
applePaySession.begin();
log('Apple Pay session called');
}
打印以下日志 “开始Apple Pay会议” “ Apple Pay会议召开了”
这意味着甚至没有调用onvalidatemerchant。 在iOS 12设备上,我还将另外获得“验证商家称为”的日志。
有什么建议吗?
答案 0 :(得分:0)
我有同样的问题。 正如您在文档中看到的那样,最新版本是6。
https://developer.apple.com/documentation/apple_pay_on_the_web/applepaysession/1778014-supportsversion
但是我检查了版本窗口。ApplePaySession.supportsVersion(8)可用。
在替换版本后
var applePaySession = new ApplePaySession(1, applePayRequest)
到
var applePaySession = new ApplePaySession(8, applePayRequest)
正在工作!