模拟 OAuth2 令牌响应

一个 POST 模拟,返回带有全新 access_token 和 refresh_token 的符合 RFC 6749 规范的令牌响应。

该模板返回符合 RFC 6749 规范的令牌响应 —— access_token、token_type、expires_in、refresh_token 和 scope —— 在每次调用时提供新的令牌值。它允许您在身份提供商可用之前构建 OAuth2 流程的客户端部分,并测试您的代码是否正确存储、刷新和使令牌过期。

代替第三方 API 端点。

响应负载

{
  "access_token": "{{faker.uuid}}",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "{{faker.uuid}}",
  "scope": "read write"
}

值得了解的字段

字段 含义
access_token 每次调用都会通过 {{faker.uuid}} 生成一个新的 UUID —— 而不是一个真正签名的令牌。
token_type 硬编码为 Bearer。
expires_in 硬编码的以秒为单位的生命周期;编辑它以测试过期处理。
refresh_token 通过 {{faker.uuid}} 生成的一个新 UUID。
scope 空格分隔的已授权作用域(scopes);编辑它以测试基于作用域的逻辑。

创建模拟数据

curl -X POST https://quickmock.dev/api/mocks \
  -H 'Content-Type: application/json' \
  -d '{
  "method": "POST",
  "response_status": 200,
  "content_type": "application/json",
  "response_body": "{\"access_token\":\"{{faker.uuid}}\",\"token_type\":\"Bearer\",\"expires_in\":3600,\"refresh_token\":\"{{faker.uuid}}\",\"scope\":\"read write\"}"
}'

调用它

curl -X POST https://quickmock.dev/m/<slug>

您将获得什么

POST /m/<slug> -> 200 an RFC 6749-shaped token response
access_token/refresh_token are fresh UUIDs each call

这与真实情况有何不同

access_token 和 refresh_token 只是全新的 UUID,而不是真实的签名 JWT,并且模拟从不检查 client_id、client_secret 或授权代码 —— 它始终返回相同的成功响应。

来源

常见问题解答

这些令牌是真实的 JWT 吗?
不是 —— access_token 和 refresh_token 是新的 UUID,不是签名的 JWT。如果您的客户端解码访问令牌并从中读取声明,此模板将无法满足它;请将其与 JWKS 模板和真实的签名令牌搭配使用。
它是否验证授权或客户端凭据?
不是。它从不检查 client_id、client_secret 或授权码,总是返回相同的成功响应。要测试失败路径,请创建第二个返回带有 OAuth2 错误主体的 400 响应的模拟(mock)。
我该如何测试令牌过期和刷新?
将 expires_in 缩短到几秒,这样你的客户端的刷新逻辑就会很快触发。因为每次调用都会返回一个新的 refresh_token,你也可以确认你的代码存储了最新的令牌而不是重复使用原来的令牌。

准备好使用了吗?

在模拟构建器中打开以先进行调整

与本指南非常搭配: 模拟 REST API 端点

相关模板

← 所有模板

最后更新: 2026-10-17