javascript - 万事达卡支付网关 API 单页应用程序

标签 javascript api single-page-application mastercard

我正在使用万事达卡支付网关 API 进行托管 session :Mastercard Payment Gateway API Documentation

集成在第一次加载时按预期工作,但这已被写入单页应用程序中。当用户通过面包屑返回页面时(使用 javascript 哈希加载“页面”)。当用户返回支付“页面”时,万事达卡支付 API 应该被第二次触发,但这种情况不会发生。

文档没有说明 PaymentSession.configure({}) 是否可以多次发送,但我假设这是我的问题。

我尝试“重置”PaymentSession 并重新加载 session.js javascript,但到目前为止还无法让这个特殊情况正常工作。我想知道是否有一种方法可以“重置”configure() 或者是否有其他方法可以解决此问题?

我不想复制并粘贴我的代码,因为它是支付集成,尽管它与文档中的示例几乎逐行相同。我还想说,这个问题与我的个人代码无关,更多的是与万事达卡支付 API 的工作方式以及我的网站是单个页面而不是仅在需要时加载 session.js 的事实有关。

最佳答案

我不喜欢运算符(operator)给出答案,但我有一个解决方案:

$.getScript("<mastercard url + version + merchant id>/session.js", function() { 
  //PaymentSession && PaymentSession.configure(); 
});

每次调用单页支付哈希时,都会使用 jQuery 加载 session.js。一旦执行了 MasterCard 支付脚本,它就会运行 PaymentSession.configure()

我的公司最终将放弃 MasterCard 支付 API,因此这是一个合适的解决方案,并且不会增加太多页面负载。 我仍然有兴趣了解是否可以通过其他方式重置该脚本。

关于javascript - 万事达卡支付网关 API 单页应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41448341/

相关文章:

javascript - polymer 插入点检查

iphone - 实现对 iphone/ipad 的传真支持

javascript - 当 URL 更改时, Backbone 单页应用程序会向用户发出警报

javascript - jQuery 无法使用 jquery.cookie 插件读取 cookie

javascript - 如何防止RethinkDB创建测试数据库

javascript - 侧边栏导航不适用于 Angular 和物化 css

javascript - 使用后退按钮移动单页应用程序 AngularJS

Angularjs 谷歌地图 API 集成

node.js - 如何将 postman 的数据发布到 Output.json 文件?

javascript - 在单页应用程序中切换样式表