HTTP客户端获取 token

安装 Apifox

Apifox 简介

Apifox 是 API 文档、API 调试、API Mock、API 自动化测试一体化协作平台,定位 Postman + Swagger + Mock + JMeter。

序号名称下载链接
1安装 apifox 客户端点击下载
2ApiFox 脚本 (微服务版本)点击下载
3ApiFox 脚本 (单体版本)点击下载

导入 Apifox 脚本

创建团队、项目

创建团队和项目

进入项目主页、导入 Apifox 脚本

导入脚本

使用 Apifox 调用接口参数说明

1. 密码模式获取 Token

密码模式说明

使用用户名和密码直接获取访问令牌。

接口地址: POST http://127.0.0.1:9999/auth/oauth2/token

请求参数:

参数类型参数名是否必填参数值说明
Querygrant_typepassword授权类型,固定值为 password
HeaderTENANT-ID1租户 ID
HeaderAuthorizationBasic dGVzdDp0ZXN0Basic 认证,格式为 Basic base64(client_id:client_secret)
示例中 dGVzdDp0ZXN0 解码后为 test:test
Body (form-data)usernameadmin用户名
Body (form-data)passwordJFat0Zdc用户密码(前端加密后的密文,防止请求密码被抓包获取)
Body (form-data)scopeserver授权范围

cURL 示例:

curl --location --request POST 'http://127.0.0.1:9999/auth/oauth2/token?grant_type=password' \
--header 'TENANT-ID: 1' \
--header 'Authorization: Basic dGVzdDp0ZXN0' \
--data-urlencode 'username=admin' \
--data-urlencode 'password=JFat0Zdc' \
--data-urlencode 'scope=server'

操作步骤: 直接点击 Send 按钮即可获取 token

获取 token

响应示例:

{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "refresh_token": "PXYvOlRm4JWkbUUXyOez17a3sDBBnaByZ6tqTbZiVkH2...",
  "expires_in": 3600,
  "scope": "server"
}

2. 刷新令牌

令牌刷新机制

当 access_token 过期后,使用 refresh_token 重新获取新的访问令牌。

接口地址: POST http://127.0.0.1:9999/auth/oauth2/token

请求参数:

参数类型参数名是否必填参数值说明
Querygrant_typerefresh_token授权类型,固定值为 refresh_token
HeaderAuthorizationBasic dGVzdDp0ZXN0Basic 认证,格式为 Basic base64(client_id:client_secret)
Body (form-data)refresh_token从上一步获取的 refresh_token刷新令牌,用于获取新的 access_token
Body (form-data)scopeserver授权范围

cURL 示例:

curl --location --request POST 'http://127.0.0.1:9999/auth/oauth2/token?grant_type=refresh_token' \
--header 'Authorization: Basic dGVzdDp0ZXN0' \
--data-urlencode 'scope=server' \
--data-urlencode 'refresh_token=PXYvOlRm4JWkbUUXyOez17a3sDBBnaByZ6tqTbZiVkH2Kbh8c96YpFw0-kazpXhP-V14xe8vFQLWnF1cExOMEg3RScOALT0iRhAnlEzS6AzX2iXULwtNYix7bKh2hDuU'

操作步骤: 直接输入上一步获取的 refresh_token,点击 Send 即可

刷新 token

响应示例:

{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "Bearer",
  "refresh_token": "NewRefreshTokenString...",
  "expires_in": 3600,
  "scope": "server"
}

参数说明补充

Authorization Header 说明

Authorization: Basic dGVzdDp0ZXN0 的生成方式:

  1. client_id:client_secret 组合,例如: test:test
  2. 进行 Base64 编码,得到: dGVzdDp0ZXN0
  3. 添加 Basic 前缀,最终为: Basic dGVzdDp0ZXN0

Token 使用说明

获取到 access_token 后,在后续的 API 请求中需要在 Header 中携带:

Authorization: Bearer {access_token}

Token 过期时间

  • access_token: 默认有效期 3600 秒(1小时)
  • refresh_token: 有效期通常更长,用于刷新 access_token