ios,遇见一个极其诡异的bug,上传图片,抓包就成功,不抓包就

2019-04-08  本文已影响0人  修行猿

问题描述:

  1. 抓包就能百分百的上传成功,不抓包百分百的上传失败,报400或者超时,这就导致没办法抓包,Charles和Burp都试了一样的结果。
  2. 然后发现只能上传40k以下的图片,超过40k的图片一上传就失败。
  3. android上传没任何问题。
  4. 网页上传没任何问题。
  5. SSL用的Let's encrypt。
  6. 服务端的 TLS1.2 神马的配置没问题,因为其他接口都正常,只有这个上传有问题。

问题定位:

  1. 一开始以为是我这边的问题,然后直接用NSURLSessionDataTask实现了一把上传,发现一样的问题。
  2. 直接用ios上的Safari上传,发现一样400错。
  3. 所以定位到应该是服务器那边的问题。

问题解决:

服务器那边有个BufferSize设置的太小,调大即可
至于为什么其他的设备能上传成功,而iphone不行。
猜想:
可能因为其他设备发送给服务器的数据,服务器可以一块一块的接收,每次接收一个BufferSize直至接收完。而iphone跟服务器的连接只能使服务器接收一块,超过一块BufferSize就跪。

如果其他道友有遇见这个问题,希望我的这点经验能帮助到你~

上一篇下一篇

猜你喜欢

热点阅读