在react组件卸载时卸载stripe pure from



所以,我想摆脱条纹发送数据从我的网站。

每次点击都是什么废话

curl 'https://m.stripe.com/6' 
-H 'authority: m.stripe.com' 
-H 'pragma: no-cache' 
-H 'cache-control: no-cache' 
-H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36' 
-H 'dnt: 1' 
-H 'content-type: text/plain;charset=UTF-8' 
-H 'accept: */*' 
-H 'origin: https://m.stripe.network' 
-H 'sec-fetch-site: cross-site' 
-H 'sec-fetch-mode: cors' 
-H 'sec-fetch-dest: empty' 
-H 'referer: https://m.stripe.network/' 
-H 'accept-language: en-US,en;q=0.9' 
-H 'cookie: m=db491b6f-636e-4801-a446-c79c62db7d25cd4297; private_machine_identifier=r3F5QQbHA31m%2FqdyaRYQx54%2B%2BhT9pZTlEAm0bKEx832xHQNO8cKhXCLY%2BpBpQHxr6CM%3D; session=sess_IlGtyX7eySNiON53kjkXvE9zPmVWYvWh' 
--data-binary 'JTdCJTIydjIlMjIlM0ExJTJDJTIyaWQlMjIlM0ElMjIzZmJmYzc0MzMwYTY1NTEwM2E3ZjY1NzE2YTA5OTA5NCUyMiUyQyUyMnQlMjIlM0E2NC4xMjUlMkMlMjJ0YWclMjIlM0ElMjI0LjUuMzMlMjIlMkMlMjJzcmMlMjIlM0ElMjJqcyUyMiUyQyUyMmElMjIlM0FudWxsJTJDJTIyYiUyMiUzQSU3QiUyMmElMjIlM0ElMjIlMjIlMkMlMjJiJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZkWjFMRHZvVExpV0NLclJWZ0l3TFFTdThoX25OSFpZSWVQcEFTZVRHUzB3LjB2RUtlM0c1cFNqUl9sbk5nYnVVMmpVQWNSLVlqSmxzTEE5ZUFkRDRNMDAuZzJ1OS1ocVp2R0lxWUpjUGxQZndKQWYtdjNSZ3lLX3gxTnBwekFsQTEyTSUyRmVJVjZEZ3V6WFAzWlhUZ0J3N2F4d3lZWU9GaXpEZGNkUVVWVkRFSjhhX2slMkZFY3dmdzcxOTJSWVVsT2hXdGZXeG1rT25vNnZMVVZLSWRDUVFrNlNJR3RBJTIyJTJDJTIyYyUyMiUzQSUyMlRqNzI0TVpFUS1abDJ0a2EwWG9ZUVcwM3ZjRlVzVzhJSUxHVm5Jc2VQTm8lMjIlMkMlMjJkJTIyJTNBJTIyODhmYWE5MTgtNmY2OS00MDQ5LWFhNmYtOTg3OTk0MDExYmU3NTQ0MTAyJTIyJTJDJTIyZSUyMiUzQSUyMjg1NjUyOWJiLTA1MTYtNDkyNy05NGRlLTQ4YjYzOTgwMmFjZTFhYTM3MyUyMiUyQyUyMmYlMjIlM0FmYWxzZSUyQyUyMmclMjIlM0F0cnVlJTJDJTIyaCUyMiUzQXRydWUlMkMlMjJpJTIyJTNBJTVCJTIybG9jYXRpb24lMjIlNUQlMkMlMjJqJTIyJTNBJTVCJTVEJTJDJTIybiUyMiUzQTQ2Ni40ODk5OTk5OTE2MDg4JTJDJTIydSUyMiUzQSUyMnRlc3RpbmctYXBwLnNwb3RuYW5hLmNvbSUyMiU3RCUyQyUyMmglMjIlM0ElMjJjMGI4YjE3MzQyNGQyNDU3ODczOSUyMiU3RA==' 
--compressed

所以我从https://mtlynch.io/stripe-recording-its-customers/学习了stripe pure。

我正在做条带挂载一旦支付组件被挂载。

loadStripe.setLoadParameters({advancedFraudSignals: false})
loadStripe(process.env.REACT_APP_STRIPE_PUBLISHABLE_KEY??'').then(setStripe);

,我不知道如何强制删除脚本。因此,如果它加载一次,它就会开始做有趣的事情。

,如果支付组件再次呈现,我得到

ERROR: setLoadParameters cannot be called after loadStripe() is called

所以,我想的解决方案可以很简单,如果我可以卸载条纹脚本时,我的支付组件卸载将工作。对此有什么建议吗?

或任何可以在这里做的更好的事情。

你需要在你的应用程序的根组件中导入没有副作用和高级欺诈检测的Stripe。然后你将引用作为道具传递给Stripe,如下面的例子:https://github.com/stripe/react-stripe-js#minimal-example。这样你的代码就不会在每次卸载/重新装载组件时都试图重新加载Stripe。

此外,您可能会对同一作者关于缓解措施和Stripe实施的更多信息的更新博客文章感兴趣:https://mtlynch.io/stripe-update/

最新更新