我正在将条条加载到我的支付页面中,如下所示:
<script src="https://js.stripe.com/v3/"></script>这在本地测试环境中非常有效,但在生产中,出现了以下控制台错误:
Uncaught Error: It looks like Stripe.js was not loaded correctly
at new e (controller-84824401a25a5595fc578f767b4d5c27.js:1)
at controller-84824401a25a5595fc578f767b4d5c27.js:1
at Object.bnjt (controller-84824401a25a5595fc578f767b4d5c27.js:1)
at t (shared-d3604a85e14ef273096e09821a0e4c2a.js:1)
at Object.3 (controller-84824401a25a5595fc578f767b4d5c27.js:1)
at t (shared-d3604a85e14ef273096e09821a0e4c2a.js:1)
at window.webpackJsonp (shared-d3604a85e14ef273096e09821a0e4c2a.js:1)
at controller-84824401a25a5595fc578f767b4d5c27.js:1我不知道是什么导致了这个错误。我在生产中使用HTTPS,可以看到JS文件源成功下载。有小费吗?
发布于 2018-01-17 21:46:59
根据@NathanCasebolt的建议解决了问题。所以mods删除了他原来的答案:
“对我来说,这个错误的解决办法就像拼写检查我的变量一样简单。在后端服务器代码中,我的一个变量被错误地大写了。由于拼写错误的变量是检索我的可发布密钥的函数的一部分,所以从服务器返回的键为null。这反过来又扰乱了Stripe对象的创建,并抛出了这个错误。如果我是您,我会检查(1)您前面的可发布键是否与仪表板中的可发布键相匹配,(2)您没有做任何可能破坏向Stripe提供此密钥的操作。“ StackOverflow的mods认为这没有回答问题,需要太多的澄清。所以,澄清一下,我的问题是这句话: var stripe =带({PUBLISHABLE_KEY}); 我设置了一些东西,以便从服务器上检索可发布的密钥,从而使我在测试密钥和活动密钥之间切换时更加灵活。因为我的一个服务器变量是错误的,所以我为Stripe提供了一个坏键(实际上没有键),这就是导致错误的原因。这就是为什么我建议您检查用于创建Stripe对象的可发布键,以确保用于创建对象的键在那里,并且它与您的Stripe仪表板上的可发布键相匹配。“
在我的例子中,这正是我所做的错误:在初始化Stripe时提供了一个空的可发布密钥。最终,一个非常简单的错误使Stripe的迟钝错误信息更加复杂。
https://stackoverflow.com/questions/48297274
复制相似问题