欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

记一次Http问题排查

程序员文章站 2024-01-27 18:16:58
...

问题经过

最近业务开发时,与服务端调试接口时。被一个蛋疼的问题给纠缠了好几小时,一个post的请求,body数据少时(小于1KB),上传的数据可以正常被解析。多于1k时,服务端就报错了。对比了其他类似的接口其他数据量比这还大都没有发生错误。几经对比和摸索始终定位不到问题。

gzip解压缩引发

经过问了其他同事,才知道如来客户端超过1kb的数据会用gzip压缩,服务端没有根据协议头信息来解压body的数据直接读,因此报错。

反思

  • 排查问题的思路:一开始只想着和同类接口用法的对比,没有什么异常。底层网络请求的排查也trace过,但是没有深入分析可能存在的原因,因此没有找到真正的原因。定位不了问题,无法推动服务端的排查。
  • 排查此类问题的工具:获取body 16进制的文件,还原成原始body文件看是否有问题
  • http协议的理解:请求header Accept-Encoding: gzip
  • 之后类似问题的快速定位