如何使用Postman获取JWT?请求头与请求体字段说明及示例
使用Postman获取JWT的详细操作指南
Hey there! Let me break down exactly how to grab a JWT token using Postman, step by step. I'll cover all the required headers, body fields, and even walk you through a full end-to-end example to make it crystal clear.
1. 提前准备事项
- 首先得拿到你的认证服务Token端点URL:通常是类似
/api/auth/login(自定义登录接口)或/oauth2/token(OAuth2流程)的地址,拿不准的话可以查服务文档。 - 准备好认证凭证:可能是用户名+密码,也可能是客户端ID+客户端密钥,取决于你的服务采用的认证方式。
2. 配置Postman请求
2.1 新建请求
- 打开Postman,点击左上角的
+图标创建一个全新请求。 - 选择正确的HTTP方法:绝大多数情况下都是
POST——因为Token端点需要安全地传递凭证,POST是标准选择。
2.2 设置请求URL
- 在顶部的URL输入框中粘贴你的Token端点地址,比如:
https://your-api-domain.com/api/auth/login
2.3 配置请求头(Headers)
- 切换到Headers标签页,至少需要配置一个核心头,根据服务要求可能还需要额外字段:
Content-Type:如果API接收JSON格式的请求体,就设为application/json;如果是表单数据,就设为application/x-www-form-urlencoded。- 可选但推荐:
Accept: application/json——告诉服务器你期望JSON格式的响应。
针对OAuth2流程的小提示:如果用的是客户端凭证模式,可能需要添加
Authorization头,值为Base64编码后的client_id:client_secret,格式是Basic <你的Base64编码字符串>。
2.4 配置请求体(Body)
请求体的格式完全取决于你的认证流程,下面是最常见的几种场景:
场景1:自定义JSON登录接口
- 切换到Body标签页,选择
raw,然后从下拉菜单中选JSON。 - 粘贴以下结构(替换成你的真实凭证):
{ "username": "你的用户名", "password": "你的密码", "client_id": "可选的客户端ID" // 只有服务要求时才添加 }
场景2:OAuth2密码授权流程
- 在Body标签页选择
x-www-form-urlencoded。 - 添加以下键值对:
grant_type:password(这个字段是该流程的必填项)username:你的用户名password:你的密码client_id:你的客户端ID(服务要求时添加)client_secret:你的客户端密钥(服务要求时添加)
场景3:OAuth2客户端凭证流程
- 同样在Body标签页选择
x-www-form-urlencoded。 - 添加以下键值对:
grant_type:client_credentialsclient_id:你的客户端IDclient_secret:你的客户端密钥
3. 端到端完整执行示例(自定义JSON登录)
我们用一个完整的例子把所有步骤串起来:
- 创建一个新的POST请求,设置URL为
https://my-app-api.com/auth/login - 切换到Headers标签,添加以下条目:
Key Value Content-Type application/json Accept application/json - 切换到Body → raw → JSON,粘贴以下内容:
{ "username": "john_doe", "password": "SecurePass123!" }
- 点击Send按钮发送请求。
- 查看响应!如果一切正常,你会收到包含JWT的JSON响应:
{ "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c", "token_type": "Bearer", "expires_in": 3600, "refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c" }
- 现在你就可以用
access_token访问受保护的接口了:只需添加一个Authorization头,值为Bearer <你的access_token>。
快速排查小技巧
- 401 Unauthorized:仔细检查你的凭证(用户名/密码、客户端ID/密钥)是否正确,同时确认请求头符合服务要求。
- 400 Bad Request:检查请求体格式是否正确——遗漏必填字段或JSON/表单数据格式错误是常见原因。
- 500 Internal Server Error:这通常是服务端问题,联系后端团队确认Token服务是否正常运行。
内容的提问来源于stack exchange,提问作者Coolbreeze




