CORS测试
在线CORS测试工具,支持跨域请求检测、响应头分析、预检诊断与多语言服务端配置生成
本工具会在浏览器中直接向目标地址发起请求,用于检测跨域访问策略与响应头配置。
CORS 请求测试
测试结果
输入 URL 并点击“测试 CORS”开始检测
CORS 配置生成器
配置代码
const http = require('http')
http.createServer((req, res) => {
res.setHeader('Access-Control-Allow-Origin', 'https://example.com')
res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS')
res.setHeader('Access-Control-Allow-Headers', 'Content-Type, Authorization')
res.setHeader('Access-Control-Max-Age', '3600')
if (req.method === 'OPTIONS') {
res.writeHead(204)
res.end()
return
}
res.writeHead(200)
res.end('OK')
}).listen(3000)工具说明
CORS测试工具用于检测跨域请求是否可用,分析关键响应头配置,并快速生成常见服务端配置代码,适合接口联调、预发验证和上线巡检。
使用步骤
- 输入目标 URL,选择请求方法,可按需填写自定义请求头和请求体。
- 点击“测试 CORS”,查看状态码、响应时间、CORS 响应头与诊断提示。
- 在右侧配置生成器中填写策略参数并生成对应服务端代码。
- 将生成配置应用到服务端后再次测试,确认跨域策略已生效。
常见 CORS 错误与处理
No 'Access-Control-Allow-Origin' header
响应未返回允许源。
在服务端添加 Access-Control-Allow-Origin,并配置正确来源域名。
Method is not allowed by Access-Control-Allow-Methods
预检通过但方法不在允许列表。
将实际请求方法加入 Access-Control-Allow-Methods。
Request header field is not allowed
自定义请求头不在允许列表。
补充 Access-Control-Allow-Headers,包含对应请求头。
Credentials is true but origin is *
凭证模式与通配符源冲突。
启用凭证时改为具体域名,不使用 *。
实践建议
- 生产环境避免使用 Allow-Origin=*,改为精确域名白名单。
- 仅开放业务需要的方法与请求头,降低攻击面。
- 预检缓存时间可提升性能,但策略变更后需注意缓存影响。
- 跨域问题排查时结合浏览器控制台报错与响应头对照定位。