从Square购买nonce

时间:2017-10-18 12:06:02

标签: javascript square

我正在建立一个网站。在本网站中,我需要通过Square处理信用卡付款。我的设计师有一个我想要使用的有趣UI。出于这个原因,文档中提到的Square Payment Form对我来说太有限了。然而,为了处理付款,我还需要从Square获得一个nonce。

我的问题是,有没有办法在不使用SqPaymentForm的情况下从Square检索随机数?如果是这样,怎么样?我没有看到任何相关的文档。但是,SqPaymentForm只是在客户端JavaScript库中,因此应该有办法实现它。但是,该库在客户端上都被混淆了,我在Square GitHub page上看不到代码。我希望我只是忽略了一些东西。

有没有办法以编程方式从Square获取一个nonce?

谢谢!

2 个答案:

答案 0 :(得分:0)

不,没有办法以编程方式获取卡片随机数,您必须使用付款方式。

答案 1 :(得分:0)

nonce似乎来自postMessage到https://connect.squareup.com

上的iframe

来自https://js.squareup.com/v2/paymentform的代码:

(r.prototype.requestCardNonceIfValidForm = function() {
  this.sendIframeMessage({
    eventName: 'requestCardNonceIfValidForm'
  });
}),
...
(r.prototype.sendIframeMessage = function(e) {
  var t = this.env.serviceUrl();
  this.iframeControllers.cardNumber.element.contentWindow.postMessage(e, t);
}),
...
service: 'https://connect.squareup.com'