我无法在3dSecure create source函数中设置自定义参数,有人知道吗?我尝试了一些方法,但是它覆盖了我的URL参数。
当我添加重定向URL时:return_url: "www.example.com?orderid=10",
经过3dSecure授权后,它在www.example.com?client_secret=xyz&livemode=false&source=sdf
处重定向了我
当我需要更新订单时,orderid
变量返回我的网站时无法获取。
Stripe对3dSecure的实施非常差劲。他们在文档中提到可以设置自定义GET参数,但没有给出示例。 You may include any other GET parameters you may need when specifying redirect
stripe.createSource({
type: 'three_d_secure',
amount: totalAmount,
currency: "eur",
three_d_secure: {
card: result.source.id
},
redirect: {
return_url: "www.example.com?orderid=10",
}
}).then(function(result2) {
});
答案 0 :(得分:1)
我从以前写过的东西中总结出一个可行的例子。您可以在这里找到它:
https://jsfiddle.net/78y1brho/
基本上,它使用Stripe.js / v2从输入框中创建令牌,然后从所得令牌中生成卡源。您可以忽略它。重要的部分是第33行上的populateCard()
函数中的代码。
该代码是您设置返回变量的地方。当我这样做时,它运行良好,并返回到:
https://test.test.test/myresponse?client_secret=src_client_secret_xxx&livemode=false&source=src_xxx&this=atest
值得注意的是结尾处的this=atest
。我认为可能只是因为您在网址中缺少协议(https://)才对所有内容进行了整理。也许尝试包括它?