目前遇到一个需要GET请求拼接很长的查询参数的场景,下面使用 Koa2 搭建了一个本地服务,查看一下GET请求参数过长到底能支撑多长,以及浏览器之间是否存在差异。
1、Koa2 代码,打印出请求的 User-Agent
和 请求长度
const koa = require('koa');
const app = new koa();
app.use(async (ctx , next)=>{
console.log(ctx.request.headers['user-agent']);
console.log(ctx.req.url.length);
await next();
ctx.body = 'Hello World';
})
app.listen('3300');
注意:以下测试结果都是通过地址栏输入URI地址的测试结果,通过Ajax请求的长度限制跟URI输入长度不一样。
2、设置了一个超长的查询参数(含 /
和 ?
共32752个字符)
http://127.0.0.1:3300/?teeoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.com.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comteeoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.combootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.comoa.bootcss.c