关于Chrome支持http header最大长度限制的讨论
Created by Wang, Jerry, last modified on Nov 09, 2016
我们在前端访问ABAP的server的时候,通过OData协议访问一个API的时候,URL中能不能带单引号呢? 我们遇到一个bug,
(1) 在IE里url带了单引号:https://jerry.neo.ondemand.com/dps/odata.svc/Context?KaTeX parse error: Expected 'EOF', got '&' at position 14: orderby=title&̲filter=appUrl%20eq%20%‘CustomerEngagementCenter’%20and%20product%20eq%20’SAP_HYBRIS_CLOUD’%20and%20version%20eq%20’1611’%20and%20(system%20eq%20null%20or%20system%20eq%20’’)%20and%20locale%20eq%20’en-US’
(2) 在Chrome没有单引号: https://jerry.neo.ondemand.com/dps/odata.svc/Context?KaTeX parse error: Expected 'EOF', got '&' at position 14: orderby=title&̲filter=appUrl%20eq%20%27CustomerEngagementCenter%27%20and%20product%20eq%20%27SAP_HYBRIS_CLOUD%27%20and%20version%20eq%20%271611%27%20and%20(system%20eq%20null%20or%20system%20eq%20%27%27)%20and%20locale%20eq%20%27en-US%27
结果就是带单引号的URL不能被ABAP Server处理,直接是HTTP 400错误。所以我想问下,是不是按照OData的协议URL里是不能带单引号的?
我试了下,在Chrome里,地址栏敲’i042416’, 单引号会自动被encode成%27:
后台成功收到:
IE的话,不会 自动encode:
Server端还是能接到,只是不能正常显示:
昨天的问题,找到了,居然是IE对HTTP Request的header大小没有做限制,我们这个case里,Referer是个很长的链接。 我们的NGINX对header的buffer设置只有1K,所以直接就报400错误了,把buffer调大就解决了。
Referer很长,那换成Chrome不是一样很长么?Chrome就没问题?
Chrome的Referer只有主要的domain信息
IE会带上所有的参数:
这样就能解释通了。
我刚才测试发现Chrome对http get的header length没有限制:
我在ABAP server直接把接到的referer3 field的value echo回去:
在Chrome postman里拼再长的length,ABAP Server一样能收到并且返回给Chrome
Test url
http://jerry:50054/sap/bc/abap/zjerry
It is impossible to manually set header Referer in Postman.
要获取更多Jerry的原创文章,请关注公众号"汪子熙":
相关文章
- Chrome Restful Api 测试工具 Postman-REST-Client离线安装包下载,Axure RP Extension for Chrome离线版下载
- [Analytics] Add Tealium debugger in Chrome
- loadrunner录制chrome脚本:页面无响应
- javascript: addEventListener对事件冒泡和事件捕获的处理演示(chrome 108.0.5359.98)
- puppeteer,新款headless chrome
- chrome扩展插件推荐:FeHelper格式化json
- 如何通过Chrome直接创建SAP CRM Opportunity的文本
- Chrome 开发者工具里根据关键字搜索,结果列表里的 JavaScript 文件名后面跟的 ‘eval‘ 是什么含义
- 利用Chrome开发者工具分析C4C Opportunity搜索的前端性能
- Chrome浏览器扩展程序的本地备份
- 关于Chrome支持http header最大长度限制的讨论
- 关于Chrome支持http header最大长度限制的讨论
- Angular http client发起的请求在Chrome开发者工具network标签页里观察到的界面
- 使用chrome下载m3u8视频
- Chrome控制台的妙用之使用XPATH
- 利用扩展双屏技术及Chrome浏览器,高速剖析优秀网页Div及CSS构成,并高效实现原型创作
- 如何利用 Chrome 来模拟移动网络来调试 FastAdmin 网站