现在我收到了错误
Uncaught exception 'Braintree\Exception\Configuration' with message 'Braintree\Configuration::merchantId needs to be set (or accessToken needs to be passed to Braintree\Gateway).
问题是,如果我的商家ID不是其创建子商家的方式,因为我能够在我的信息中心看到子商家帐户,但我打算打电话 这个方法:
$webhookNotification = Braintree\WebhookNotification::parse($sampleNotification['bt_signature'], $sampleNotification['bt_payload']);
它说
Uncaught exception 'Braintree\Exception\Configuration' with message 'Braintree\Configuration::merchantId needs to be set (or accessToken needs to be passed to Braintree\Gateway).
答案 0 :(得分:0)
完全披露:我在Braintree工作。如果您有任何其他问题,请随时联系 [支持] [支持] 子>
merchant ID是所有Braintree API调用所需的API凭据,以及公钥和私钥。您可以在仪表板中看到没有商家ID的子模板,因为我们的系统会将您对仪表板的登录识别为有效身份验证,而不是依赖于API凭据。
使用我们的SDK时,您需要set up your API Credentials appropriately。您可以按照instructions in our documentation找到帐户的API凭据。我们现在支持class level and instance methods。
课程级别示例
Braintree_Configuration::environment('sandbox');
Braintree_Configuration::merchantId('use_your_merchant_id');
Braintree_Configuration::publicKey('use_your_public_key');
Braintree_Configuration::privateKey('use_your_private_key');
实例方法示例
$gateway = new Braintree_Gateway([
'environment' => 'sandbox',
'merchantId' => 'use_your_merchant_id',
'publicKey' => 'use_your_public_key',
'privateKey' => 'use_your_private_key'
]);
答案 1 :(得分:0)
我用Laravel。就我而言,问题出在配置文件缓存中。由于某些原因,Laravel无法从命令生成配置缓存:
php artisan config:cache
。
我解决了删除配置缓存的问题:
php artisan config:clear
但是在我看来,真正的问题是Laravel配置缓存的生成。
我希望它有用。
更新
我的配置缓存不起作用,因为我没有将env()
帮助程序放在配置文件中,而是放在其他文件中(在我的情况下为AppServiceProvider)。
在生产模式下,只能从配置文件中调用.env参数。
如果在部署过程中使用config:cache命令,则必须 确保只在您的内部调用env函数 配置文件,而不是应用程序中其他任何地方。