Stripe Laravel:API键必须是字符串

gijlo24d  于 2023-05-08  发布在  其他
关注(0)|答案(1)|浏览(108)

我的应用是用laravel 8,laravel Mix 6.0.39,vue js 2.6和vuex 3.0.1构建的
我使用收银员的付款模块,所以在付款组件中,我有这个代码来初始化付款方式:

let apikey = process.env.MIX_STRIPE_KEY
 this.stripe = await loadStripe(apikey)
 const elements = this.stripe.elements()
...

.env文件:

STRIPE_SECRET=sk_test_.....

STRIPE_WEBHOOK_SECRET =we_....

MIX_STRIPE_KEY ="${STRIPE_KEY}"

但我有以下错误在安装付款方式:IntegrationError: Missing value for Stripe(): apiKey should be a string.
我尝试在日志中显示变量process.env.MIX_STRIPE_KEY,我有undefined,但它在.env文件中初始化
你有办法解决这个问题吗?

20jt8wwn

20jt8wwn1#

您为MIX_STRIPE_KEY使用了STRIPE_KEY值,但您是否在.env中实际定义了STRIPE_KEY的值?我看到了STRIPE_SECRETWEBHOOK_SECRET,您还需要STRIPE_PUBLIC(或STRIPE_KEY)密钥。您将在Stripe Dashboard中找到公钥,就在您找到秘密的地方。
因此,它应该看起来像:

STRIPE_SECRET=sk_test_.....
STRIPE_KEY=pk_test_.....
STRIPE_WEBHOOK_SECRET=we_....
MIX_STRIPE_KEY="${STRIPE_KEY}"

另外,不要忘记在更改.env后重新启动本地服务器。

相关问题