Apple Pay 支付请求 API iframe
Posted
技术标签:
【中文标题】Apple Pay 支付请求 API iframe【英文标题】:Apple Pay Payment Request API iframe 【发布时间】:2020-06-03 09:12:21 【问题描述】:有一个页面实现了支付请求 api,它有一个 Applepay 按钮,一切正常。但是一旦页面嵌入到 iframe 中,就会发生 SecurityError 错误:尝试从安全来源与其***框架不同的文档启动 Apple Pay 会话。
属性allowpaymentrequest = 'true'
htmlIFrameElement 接口的allowPaymentRequest 属性返回一个布尔值,指示是否可以在跨域iframe 上调用支付请求API。
两个页面都是https。
example.com:
const applePayMethod =
supportedMethods: "https://apple.com/apple-pay",
data:
version: 3,
merchantIdentifier: "somemerchantid",
merchantCapabilities: ["supports3DS",],
supportedNetworks: ["masterCard", "visa"],
countryCode: "US",
,
;
const paymentDetails =
total:
label: "My Merchant",
amount: value: "27.50", currency: "USD" ,
,
try
const request = new PaymentRequest([applePayMethod], paymentDetails, );
const response = await request.show();
const status = processResponse(response);
response.complete(status);
catch (e)
console.log(e)
code-with-iframe.com
<iframe allowpaymentrequest='true' src="https://example.com/" frameborder="0"></iframe>
【问题讨论】:
【参考方案1】:Allowpaymentrequest 属性已弃用,浏览器不再支持
See more here
【讨论】:
以上是关于Apple Pay 支付请求 API iframe的主要内容,如果未能解决你的问题,请参考以下文章
调试 Apple pay message 支付请求无效:<private>
无法从 Apple Pay 获得任何响应 - 此资源来自本地覆盖
如何在 Google Pay 和 Apple Pay 中为 Authorize.net 生成支付令牌(在移动应用交易中)?