2017-10-28 177 views
0

我想用我自己的輸入表單來獲取信用卡信息,然後用它來生成一個令牌。在Stripe.js 3中,這顯然很難實現,因爲它使用iframe將輸入字段裝載到每個div元素。顯然有一個update()函數,您可以從其他地方(我自己的用戶界面)獲取值,但我無法實現它的工作。有沒有人有如何實現這個想法?Stripe.js解析個人信息 - Javascript

var cardNumber = elements.create('cardNumber'); 
cardNumber.mount('#number'); 
var cardExpiry = elements.create('cardExpiry'); 
cardExpiry.mount('#example2-card-expiry'); 
var cardCvc = elements.create('cardCvc'); 
cardCvc.mount('#example2-card-cvc'); 

https://jsfiddle.net/507oh942/2/

https://stripe.com/docs/stripe.js#other-methods

我也不敢肯定Stripe.js 2,支持這仍然是積極的。有沒有人有一個工作小提琴利用舊版本?

回答

1

在Stripe.js v3中,所有卡片信息都在由Stripe的域託管的iframe上,不可能從您自己的表單中獲取卡片信息。如果你需要這樣做,我會繼續使用Stripe.js v2,不過要注意的是有與之相關的PCI影響(SAQ A-EP vs SAQ A)。

如果您想將v3中的字段拆分爲單獨的組件(數字,到期等的一個字段),您可以輕鬆地做到這一點,儘管它們仍然是從iframe託管的。

在這裏看到完整的例子,https://jsfiddle.net/o2n3js2r/132/

var cardNumberElement = elements.create('cardNumber', { 
    style: style 
}); 
cardNumberElement.mount('#card-number-element'); 

var cardExpiryElement = elements.create('cardExpiry', { 
    style: style 
}); 
cardExpiryElement.mount('#card-expiry-element'); 

var cardCvcElement = elements.create('cardCvc', { 
    style: style 
}); 
cardCvcElement.mount('#card-cvc-element'); 

var postalCodeElement = elements.create('postalCode', { 
    style: style 
}); 
postalCodeElement.mount('#postal-code-element'); 
+0

感謝您的額外信息。我會試圖使用Stripe.js v2,但我無法得到它的工作。你有一個工作小提琴嗎? –

+0

@MajaJelen這裏有它的參考,https://stripe.com/docs/stripe.js/v2 一個例子 http://jsfiddle.net/etn5kjj6/ 記住需要的PCI影響你要做一些額外的工作,https://stripe.com/docs/security#validating-pci-compliance – duck

+0

也許我錯過了一些東西,但是這個例子並沒有生成一個令牌。 –