我正在运行Laravel Framework 5.8.37 (还没有时间升级...)
我在我的laravel应用程序中使用了Sstripe作为支付解决方案。在进行了一些重构之后,我将重新实现我在Stripe中的支付内容。
我把所有的钥匙和东西都放在.env里。像这样:
STRIPE_PUB_KEY= pk_test_MyKeYs
STRIPE_SECRET_KEY= sk_test_MyKeYs
STRIPE_END_POINT_SECRET = whsec_MyKeYs
在app.config中,我定义了它们:
'stripe_pub_key' => env('STRIPE_PUB_KEY'),
'stripe_secret_key' => env('STRIPE_SECRET_KEY'),
'stripe_end_point_secret' => env('STRIPE_END_POINT_SECRET')
然后从我的代码中调用:
var stripe = Stripe("{{ config('app.stripe_pub_key') }}");
一切都应该正常工作。但是会发生什么呢?我得到了错误:
Uncaught IntegrationError: Please call Stripe() with your publishable key. You used an empty string.
对配置的调用返回空字符串!奇怪的是,情况会变得更糟。为了能够更好地测试,我刚刚在我的刀片中添加了以下内容:
<h1>My response:{{ config('app.stripe_pub_key') }}</h1>
它确实返回空字符串。现在来看看真正的奇怪之处。如果我更改为:
<h1>My response:{{ config('app.stripe_secret_key') }}</h1>
..。只是为了测试一下。它返回密钥!?-它也适用于端点密钥。这似乎只是pub_key不工作...另外,如果我随机创建一个新的,它似乎不起作用。
这会是什么呢?
发布于 2020-04-12 07:15:37
您可能需要使用php artisan cache:clear && php artisan config:cache
重新缓存您的配置。
此外,删除环境文件中的空格是=
。
https://stackoverflow.com/questions/61167182
复制相似问题