如何在 Flutter 中使用 rest api 不使用 firebase 以 google 或 facebook 登录

Posted

技术标签:

【中文标题】如何在 Flutter 中使用 rest api 不使用 firebase 以 google 或 facebook 登录【英文标题】:How to sign in as google or facebook using rest api not using firebase in Flutter 【发布时间】:2021-04-08 11:26:38 【问题描述】:

我有一个场景,我必须使用 REST API(laravel)以谷歌和 Facebook 身份登录。我不知道它是怎么做到的。有没有可能?请给我一些指导

【问题讨论】:

要使用 Google/Facebook 登录,您需要对 google 和 facebook 使用名为 OAuth 的流程。本指南可能会有所帮助:dev.to/risafj/… 【参考方案1】:

我最喜欢的 Laravel 登录认证是:Laravel Socialite

请看这里: https://github.com/overtrue/laravel-socialite

这个适用于 Laravel 7/8 版本。

【讨论】:

【参考方案2】:

该过程将涉及使用另一个包。这使用 2 腿 Oauth 方法。

    在 Flutter 上设置 Facebook/Google SDK。第一部分你需要这个。 使用社交名流库将您从客户端 (Flutter) 的 OAuth 步骤获得的令牌交换到服务器端。 然后您可以检索所有者信息,包括电子邮件。 如果电子邮件已经在您的服务器上,那么您可以相信他们就是他们并登录(返回访问令牌,就像他们使用用户名和密码登录一样) 如果他们不在您的数据库中,您可以将一些信息返回给客户并要求他们完成注册,或者您可以相信他们是合法用户并静默注册。

【讨论】:

以上是关于如何在 Flutter 中使用 rest api 不使用 firebase 以 google 或 facebook 登录的主要内容,如果未能解决你的问题,请参考以下文章

如何使用flutter Dropdown小部件从Django REST API端点填充数据

如何使用 HTTP 将多张图片上传到 Flutter 中的 Rest API?

Flutter 中的 REST API

Flutter 如何使用 JSON 从 Rest API 获取 List<String> _list 数组字符串

如何将多个图像上传到 Flutter 中的 REST API?

从 REST API 实时更新 Flutter 应用数据