PaymentRequest:securePaymentConfirmationAvailability() 静态方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

实验性: 这是一项实验性技术
在生产中使用此技术之前,请仔细检查浏览器兼容性表格

PaymentRequest 接口的 securePaymentConfirmationAvailability() 静态方法用于指示 安全支付确认 (SPC) 功能是否可用。

语法

js
securePaymentConfirmationAvailability()

参数

无。

返回值

一个 Promise,它会解析为一个枚举值,指示 SPC 是否可用,如果不可用,则提供不可用的原因。

可能的值是

available

SPC 在调用帧中可用。这并不能保证存在 兼容 SPC 的凭证 可用于进行身份验证。

unavailable-unknown-reason

SPC 在调用帧中不可用,原因未知。为了保护用户隐私,浏览器可能会返回此结果而不是更具体的原因。

unavailable-feature-not-enabled

SPC 在调用帧中不可用,因为它未启用。

unavailable-no-permission-policy

SPC 在调用帧中不可用,因为它被 payment 权限策略 阻止了。

unavailable-no-user-verifying-platform-authenticator

SPC 在调用帧中不可用,因为没有可用的用户验证平台身份验证器(也可以使用 PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() 来了解此信息)。

示例

js
async function spcSupport() {
  const support = await PaymentRequest.securePaymentConfirmationAvailability();
  if (support === "available") {
    // Commence SPC payment flow
  } else {
    // Fallback to traditional flows
  }
}

规范

规范
安全支付确认
# dom-paymentrequest-securepaymentconfirmationavailability

浏览器兼容性

另见