【发布时间】:2020-05-18 19:53:54
【问题描述】:
我是 laravel firebase 实时数据库的新手,我正在尝试连接到 firebase 数据库,但由于某种原因无法连接。我在 Firebase 控制台中有一个数据库,并且在我的 FirebaseController 中包含了一个 json 私钥。这是我得到的错误。
Kreait\Firebase\Exception\InvalidArgumentException
服务帐户规范无效
Firebase 控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class FirebaseController extends Controller
{
public function index(){
$database = app('firebase.database');
$reference = $database->getReference('subjects');
$value = $reference->getValue();
return $value;
}
}
Web.php 文件
<?php
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return view('welcome');
});
Route::get('/firebase','FirebaseController@index');
``
【问题讨论】:
-
您是否为
FIREBASE_CREDENTIALS设置了指向您的服务帐户的路径?如果是这样,它实际上是一个服务帐户 JSON 文件吗?它必须是服务帐户 JSON,而不是 Web 配置。 firebase.google.com/docs/admin/setup#initialize-sdk -
是的,我在服务帐户中生成了一个生成的私钥,这是一个 json 文件
-
非常感谢伙计。我的 FIREBASE_CREDENTIALS 设置不正确。我通过设置我的服务帐户 json 文件的完整路径来解决这个问题。 FIREBASE_CREDENTIALS=App/Http/Controllers/FirebaseKey.json
标签: php laravel firebase firebase-admin