0

我正在测试 Apple Pay JS,我让它完全正常工作。但是,我想用其他一些字段(例如用户名或地址)填充确认弹出窗口(要求接受购买的弹出窗口)。文档说可以做到,但没有例子。这是我所指的代码:

var request = {
countryCode: 'US',
currencyCode: 'USD',
supportedNetworks: ['visa', 'masterCard'],
merchantCapabilities: ['supports3DS'],
total: { label: 'Your Label', amount: '10.00' },
}
var session = new ApplePaySession(1, request);
4

2 回答 2

1

这当然可以做到。

PaymentRequest对象允许您包含一个作为shippingContact运输字典的对象。可用字段列在其PaymentContact页面上。

所以你的 PaymentRequest 看起来像

var request = {
countryCode: 'US',
currencyCode: 'USD',
supportedNetworks: ['visa', 'masterCard'],
merchantCapabilities: ['supports3DS'],
total: { label: 'Your Label', amount: '10.00' },
shippingContact: {
  givenName: 'Martin', familyName: 'StackOverflow',
  addressLines: ['123 Main St', 'Apt: 5'],
  locality: 'Whoville',
  administrativeArea: 'FL',
  postalCode: '43210',
  country: 'US'
}  
}
var session = new ApplePaySession(1, request);

当您将此信息传递给 PaymentRequest 时,该地址将显示在 Paysheet 中。它不会将联系人添加到他们的联系人列表中,他们仍然可以用自己的联系人覆盖它,但该地址将默认显示在 Paysheet 中。

于 2016-12-01T15:10:04.727 回答
0

据我所知,您无法使用 JavaScript API 将联系信息写入 Apple Pay 表,只能读取用户输入的值。预先设定的值来自手机,来自为用户之前的 Apple Pay 会话输入的详细信息,无论是在网络上还是在应用程序中,然后由设备保存到钱包中。

您可以从传递给onshippingcontactselected函数的事件中读取一些联系人详细信息,并在传递给onpaymentauthorized函数的事件中返回所有内容。

于 2016-10-12T16:48:46.307 回答