如何在Chrome中使用Authorization HTTP Header查看需基础验证的API内容
嘿,我来分享几个实用的方法帮你在Chrome里直接带Basic Auth头访问API,都是日常开发测试常用的:
方法1:直接在URL中嵌入认证信息(最简单但注意安全)
这是最快的方式,把用户名和密码直接拼在URL开头,格式如下:
https://你的用户名:你的密码@目标API的完整URL
比如:https://john:123456@api.example.com/user/profile
⚠️ 注意:这种方式会把密码明文暴露在地址栏、浏览器历史和服务器日志里,只适合本地测试或可信的内部环境,绝对不要在生产环境或公共网络下使用!
方法2:用Chrome开发者工具手动修改请求头
这个方法更安全,适合临时调试:
- 打开Chrome,直接访问目标API URL(此时会返回401未授权错误,不用管)
- 按
F12打开开发者工具,切换到Network标签页 - 刷新页面,找到列表中第一个对应API的请求,右键点击它,选择
Copy > Copy as fetch - 切换到Console标签页,粘贴刚才复制的代码
- 修改fetch的配置,添加Authorization头:
// 替换成你的用户名和密码 const credentials = btoa("你的用户名:你的密码"); fetch("目标API的完整URL", { headers: { "Authorization": `Basic ${credentials}` } }) .then(response => response.text()) // 如果API返回JSON,改成response.json() .then(data => { console.log(data); // 控制台打印返回内容 // 也可以直接在页面显示:document.body.innerHTML = '<pre>' + JSON.stringify(data, null, 2) + '</pre>' }) - 按下回车键执行,就能在控制台看到API返回的内容了
方法3:用书签脚本(Bookmarklet)快速重复访问
如果需要多次访问同一个API,可以把逻辑做成书签,一键调用:
- 右键Chrome的书签栏,选择添加书签
- 名称填个好记的,比如「带Basic Auth访问」
- 在「网址」栏粘贴以下代码:
javascript:(function(){ const authPair = prompt("请输入 用户名:密码"); if (!authPair) return; const authHeader = "Basic " + btoa(authPair); fetch(window.location.href, { headers: { Authorization: authHeader } }) .then(res => res.text()) .then(content => { document.body.innerHTML = '<style>pre{white-space:pre-wrap;}</style><pre>' + content + '</pre>'; }) .catch(err => alert("请求失败:" + err)); })(); - 访问目标API URL后,点击这个书签,输入
用户名:密码格式的认证信息,页面就会直接显示API返回的内容
重要注意事项
- Basic Auth的base64编码是可逆的,必须在HTTPS协议下使用,否则认证信息会被明文拦截
- 测试完成后,建议清除浏览器的历史记录,避免密码泄露
- 如果遇到CORS跨域错误,可以在Chrome启动时添加
--disable-web-security参数(仅用于本地测试,不要正常浏览网页时使用)
内容的提问来源于stack exchange,提问作者roy mendelovitz




