📜  如何使用邮递员登录 laravel 护照 - PHP (1)

📅  最后修改于: 2023-12-03 15:38:08.749000             🧑  作者: Mango

如何使用邮递员登录 Laravel 护照 - PHP

邮递员(Postman)是一款非常方便的 API 测试工具,能够帮助开发者测试 API 接口。Laravel 护照(Passport)是 Laravel 的一款官方 OAuth2 服务器。在一些需要身份验证的场景中,通常我们需要运用到这两个工具。本文将介绍如何使用邮递员登录 Laravel 护照。

前置条件

在开始本文之前,需要先做一些准备工作:

  1. 安装 Laravel。
  2. 安装 Laravel 护照(Passport)。
  3. 了解关于 OAuth2 的基本概念。
步骤
1. 创建客户端

首先,我们需要创建一个客户端来获取授权令牌。我们可以通过运行以下 Artisan 命令来创建客户端:

php artisan passport:client --client

运行命令后,你将会被要求提供客户端名称和客户端重定向 URL。在后面的测试中需要用到这个客户端 ID 和秘钥。

2. 获取授权码

使用邮递员创建一个 POST 请求到 http://localhost/oauth/authorize 。请求参数如下:

{
  "response_type": "code",
  "client_id": "{YOUR_CLIENT_ID}",
  "redirect_uri": "{YOUR_REDIRECT_URI}",
  "scope": ""
}

其中 YOUR_CLIENT_IDYOUR_REDIRECT_URI 分别代表我们在之前创建的客户端 ID 和重定向 URL。我们需要在邮递员中设置好这两个参数。

3. 获取 access_token

接下来,我们将获取授权码并使用它来获取 access_token。在邮递员中,创建一个 POST 请求到 http://localhost/oauth/token,请求参数如下:

{
  "grant_type": "authorization_code",
  "client_id": "{YOUR_CLIENT_ID}",
  "client_secret": "{YOUR_CLIENT_SECRET}",
  "redirect_uri": "{YOUR_REDIRECT_URI}",
  "code": "{AUTHORIZATION_CODE}"
}

其中 YOUR_CLIENT_IDYOUR_CLIENT_SECRETYOUR_REDIRECT_URI 均为你在之前创建客户端时所填写的数据。AUTHORIZATION_CODE 是在第 2 步中获取的授权码。

4. 测试

现在我们已经获取到了 access_token,可以开始测试 API 了。在邮递员中创建一个 GET 请求到某个需要验证才能访问的 API 地址,并在请求 header 中携带我们获取到的 access_token。如下:

{
 "Authorization": "Bearer {ACCESS_TOKEN}"
}

其中 ACCESS_TOKEN 是在第 3 步中获取的 access_token。

5. 结语

现在你已经知道如何使用邮递员登录 Laravel 护照了。这样的流程类似于我们平常登录电商或者社交网站时使用的 OAuth2 授权登录。希望这个教程可以对你有所帮助。