问题描述
我正在尝试设置 POC 以在网络上处理 applepay。我在 Azure 上有一个经过验证的商家域的站点,并且能够生成据我所知看起来有效的付款会话,例如
{
"epochTimestamp": 1618320255698,"expiresAt": 1618323855698,"merchantSessionIdentifier": "some identifier","nonce": "some nonce","merchantIdentifier": "some identifier","domainName": "myVerifiedDomain.azurewebsites.net","signature": "a nice long signature","operationalAnalyticsIdentifier": "display name:the merchant session identifier above","retries": 0
}
这在 onvalidatemerchant
事件处理程序中生成,并传递到 session.completeMerchantValidation
。
使用沙盒帐户或带有链接卡的实时 Apple 帐户,接下来发生的事情是页面上 ApplePay 弹出窗口中立即显示“付款未完成”消息,并且点击 oncancel
事件检查事件,我没有看到任何暗示这个问题的东西。有一个 sessionError
对象,但其代码为 "unkNown"
,而 info
对象为空。
可能是什么原因造成的?我发现的其他报告似乎主要是关于未验证的域,但它肯定与已验证的匹配,并且我尝试了一些变体(包括 https:// 和完整页面 URL 而不仅仅是域) 和我有同样的症状
解决方法
我已经想通了。我的模型中缺少 displayName 属性,因此没有从 JSON 中反序列化