回调地址填写原文
redirect_uri 必须是注册时的完整字符串,端口、路径、尾斜线和已有查询都要核对。不要先编码整个地址;额外参数也按原始 key=value 逐行填写,值中的 & 会被作为内容编码。
OAuth 开发与调试
先用公开示例查看请求与回调的关系,再换成自己的参数。
填写原始值,注册的回调地址会作为参数原样保留。
全部处理在当前浏览器标签页完成,不发送或保存输入。
response_type=code · 授权码流程
保留 verifier 用于令牌请求;只有 S256 挑战进入地址,报告不含 verifier。
额外参数每行一个原始 key=value;不要预编码或重复保留字段。
填写参数或载入示例。
回调地址只差一个端口,或者 state 里的加号被解成空格,都可能让登录流程卡住。OAuth 授权链接检查把完整地址和解码后的参数放在一起,你可以直接看到实际发出的值,而不必在一长串百分号里寻找差异。
已经拿到测试回调时,切换到解析模式,粘贴地址并单独填写当时保存的预期 state。表格不会把重复名称压成一个值,也不会把“解析成功”写成“身份验证成功”。
OAuth 授权链接构建会对原始 verifier 做 S256 派生,仅将 challenge 和方法名加入请求。verifier 留在输入框,通过独立按钮复制给后续令牌请求;授权参数表与报告都不包含它,方便分清这两个值的去向。
同名 state 可能同时出现在查询串和片段中。这里分别标记来源、保留原次序,即使两个值相同也判为歧义。这样可以看到导致客户端取错值的原始证据。
redirect_uri 必须是注册时的完整字符串,端口、路径、尾斜线和已有查询都要核对。不要先编码整个地址;额外参数也按原始 key=value 逐行填写,值中的 & 会被作为内容编码。
生成按钮为 state 和 verifier 各取 32 个随机字节;scope 包含独立 openid 项时还会更新 nonce。先查看修改字段数再应用,保留本次 verifier。修改权限不会暗中生成另一套随机值。
自动模式在停止编辑 350 毫秒后更新;关闭后可点击执行,也可按 Ctrl/Cmd+Enter。结果过期时不能导出。两个视图保留各自输入,回调的预期 state 需要单独提供,避免猜测它属于哪次请求。
OAuth 授权 URL 里,内层回调的查询不会变成外层参数。已有端点查询先严格解码,再与表单一起编码;额外值中的原始加号写成 %2B,空格使用表单查询编码。
接受 43–128 个合法字符组成的 verifier,不裁剪空白,也不先做 Base64 解码。关闭 PKCE 只移除输出中的挑战参数,保留输入;语法合法不代表手工字符串有足够随机性。
支持完整回调 URL、?query、#fragment 和裸查询串。%252F 只解成 %2F,%2B 解成加号,普通 + 解成空格;空值、空键及重复项全部保留,便于定位 OAuth 回调地址里的编码问题。
缺失、空值、重复、未提供预期值、匹配及不匹配分别显示。code 与 error 混合或存在重复参数时会提示检查;长表先显示 50 行,报告始终导出完整列表。
协议、端口、路径或尾斜线的变化可能指向另一个接收端。请在提供商控制台登记实际要用的地址。本页把你的原文作为参数值保留,无法读取服务端的客户端注册配置。
state 随回调返回,用于与这笔事务原先保存的值比较。nonce 通常出现在 ID token 的声明中,需要先验证该令牌再核对。回调参数中出现 nonce,并不等于完成了这项检查。
客户端密钥用于令牌端点上的客户端认证;PKCE 将授权码进一步绑定到原始 verifier。当前安全最佳实践也建议机密客户端使用 PKCE。这里默认启用 S256,但仍需确认服务端支持。
可以,它是公开标识,不是客户端密钥。client_secret 与 code_verifier 不应进入授权查询串;工具会拦截这些参数名,并为 verifier 提供单独的复制按钮。
OAuth 负责资源访问授权,OpenID Connect 在其上增加用户认证与 ID token。准备这类请求时,需要在 scope 中加入 openid,并按提供商要求填写 nonce;令牌验证仍由你的应用完成。
发现计算或校验问题?