如何使用 Socialite 通过 Twitter / X 登录您的 Laravel 11 应用程序

使用 Twitter 登录是 Web 和移动应用程序的标准身份验证功能。 Twitter 提供 OAuth 1.0a 和 OAuth 2.0 这两种不同的身份验证 API,用于通过其应用程序登录。

在编写本教程之前,我尝试使用 OAuth1.0a 和 OAuth 2.0 进行身份验证,但 OAuth 2.0 存在一个主要问题。 如果您使用 OAuth 2.0 进行身份验证,Twitter 开发人员应用程序不会为任何用户提供电子邮件 ID。 每次用户通过 Twitter 登录时,您都需要手动获取用户的电子邮件。 如果你没有收到电子邮件,那么 Laravel 将抛出错误,指出“用户电子邮件不应为空”。

所以,如果你通过 Laravel 登录,你需要用户的电子邮件地址,而目前 Twitter API 不提供任何选项。

基于此,我将使用 OAuth1.0a API,它提供了一个选项来为尝试通过 Laravel 11 应用程序登录的用户获取电子邮件地址。

以下是使用 Socialite 包通过 Twitter / X 创建 Laravel 11 应用程序身份验证的分步指南:

第 1 步:安装 Laravel 11 样板

使用以下命令安装 Laravel:

composer create-project --prefer-dist laravel/laravel twitterlogin

进入项目文件夹:

cd twitterlogin

第2步:配置数据库

在本教程中,我使用 MySQL 数据库。

要将我们的 Laravel 应用程序连接到 MySQL 数据库,您需要修改 .env 文件。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=twitterlogin
DB_USERNAME=root
DB_PASSWORD=root

第 3 步:安装 Jetstream

Jetstream 为您的应用程序的登录、注册、电子邮件验证、双因素身份验证、会话管理、通过 Laravel Sanctum 的 API 以及可选的团队管理功能提供实现。

要在 Laravel 中安装 Jetstream,请使用以下命令:

composer require laravel/jetstream

安装后,您需要发布Jetstream的资产。

php artisan jetstream:install livewire

它将安装一些库、创建表和一些配置。

第四步:安装社交名流包

Socialite 包是 Laravel 中社交身份验证的首选包。

使用以下命令安装软件包:

composer require laravel/socialite

另外,使用以下命令迁移表:

php artisan migrate

第 5 步:创建 Twitter 开发者应用程序

要通过 Twitter 进行身份验证并使用其 API,我们需要从其开发人员门户创建一个开发人员应用程序。

注册 Twitter 开发者门户。

注册后,您需要为您的项目创建一个应用程序,如下所示:

创建 Twitter 应用程序创建 Twitter 应用程序

命名您的应用程序后,下一步是“密钥和令牌”,如下所示:

Twitter API 密钥和令牌

之后,我们的应用程序就创建好了。

下一步是设置用户身份验证设置

设置用户身份验证

在下一步中,我们将为 Twitter 开发者应用程序设置权限。

Twitter 应用程序权限

帖子浏览量:0 分享于:

克鲁纳尔·拉蒂亚

Krunal 在计算机科学领域拥有八年多的职业生涯,他的专业知识植根于坚实的实践经验基础,辅之以对知识的不断追求。

如何使用 Laravel 11 和 React.js 创建 CRUD 应用程序

资讯来源:由0x资讯编译自APPDIVIDEND,版权归作者Krunal Lathiya所有,未经许可,不得转载

资讯来源:由a0资讯编译自THECOINREPUBLIC。版权归作者A0资讯所有,未经许可,不得转载

上一篇 2024年 5月 31日 下午1:58
下一篇 2024年 5月 31日

相关推荐