【问题标题】:How can i add firebase authentication to laravel api routes如何将 Firebase 身份验证添加到 laravel api 路由
【发布时间】:2019-07-17 19:27:15
【问题描述】:

我是 laravel 的新手。我正在对 web 路由使用 laravel 默认身份验证,但我想使用 firebase 令牌对 api 路由进行身份验证。

我有一个认证包,但我不知道如何正确使用它 https://github.com/csrui/laravel-firebase-auth

我已经添加了这些

AuthserviceProvider.php

public function boot()
{
    $this->app['auth']->viaRequest('firebase', function ($request) {
        return app(\csrui\LaravelFirebaseAuth\Guard::class)->user($request);
    });

}

config/app.php(提供者数组)

csrui\LaravelFirebaseAuth\FirebaseAuthServiceProvider::class,

.env

FIREBASE_PROJECT_ID=myprojectName //write your project id here

配置/auth.php

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'firebase',
        'provider' => 'firebase',
    ],
],
'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],

    'firebase' => [
        'driver' => 'firebase',
        'model' => \csrui\LaravelFirebaseAuth\User::class,
    ],
],

当我使用 firebase 令牌作为身份验证承载发出 api 请求时。它不起作用。 我觉得我在 config/auth.php 中做错了

【问题讨论】:

    标签: php laravel firebase firebase-authentication


    【解决方案1】:

    调试我的 api 之后。我知道它可以工作,但 ssl 有错误

    cURL 错误 60:SSL 证书问题:无法获取本地颁发者证书(请参阅http://curl.haxx.se/libcurl/c/libcurl-errors.html

    我通过从https://curl.haxx.se/ca/cacert.pem 下载“cacert.pem”解决了这个问题 并复制到项目库 然后将这些行添加到“\vendor\kreait\firebase-tokens\src\HttpKeyStore.php”

            'base_uri' => '57a/vendor/guzzlehttp/guzzle/src',
            'verify' => base_path('cacert.pem'),
    

    现在一切正常。

    【讨论】:

      猜你喜欢
      • 2021-04-03
      • 2015-12-05
      • 2017-12-05
      • 1970-01-01
      • 2020-01-03
      • 1970-01-01
      • 2016-02-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多