首页 > 解决方案 > 如何通过 Laravel 后端将身份验证令牌从 Firebase 代理到客户端

问题描述

我正在将我的后端从 Node/Express 重构为 PHP/Laravel,并将数据存储从 firebase 重构为 mysql。这个过程需要一段时间,并且在一段时间内,新旧后端都应该并行运行。

我采取的第一步是让经过身份验证的用户从新后端访问旧版 Firebase 实时数据库。我已经可以使用用户凭据(电子邮件/密码)使用包kreait/laravel-firebase将它们从我的新后端登录到 firebase 。

这就是我在 firebase 中对用户进行身份验证的方式:

public function login(Request $request)
{
    $fUser = app('firebase.auth')->signInWithEmailAndPassword($request->email, $request->password);
    // rest of login...
}

signInWithEmailAndPassword()返回一个SignInResult包含来自 Firebase 的所有令牌的对象。

{
    -idToken: "long token here"
    -accessToken: ...
    -refreshToken: "long token here"
    -ttl: ...
    -data: ...
    -firebaseUserId: ...
    ...
}

到目前为止,一切都很好。不过,我的问题是,我不知道如何将这些令牌传递回客户端,因此当在新后端进行身份验证时,我的用户将在前端应用程序中自动登录。

任何帮助都非常感谢!

标签: phplaravelfirebase

解决方案


推荐阅读