iOS kCFErrorDomainCFNetwork Code=303 错误解决方案

本文分析了WKWebView加载H5页面出现白屏的原因,并详细介绍了如何排查和解决由Cookie大小超过5KB导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景

最近测试反馈,部分机型上面访问会员H5页面,页面白屏,而且极其容易复现。

过程

我们经过Debug 发现,WKWebView 抛出了以下错误:

Error Domain=kCFErrorDomainCFNetwork Code=303 "(null)" UserInfo={_WKRecoveryAttempterErrorKey=<WKReloadFrameErrorRecoveryAttempter: 0x2825dd760>, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <C69C2120-3520-4CBD-96B6-C3A8D635EF53>.<98>, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2205, networkTaskDescription=LocalDataTask <C69C2120-3520-4CBD-96B6-C3A8D635EF53>.<98>}

通过官方文档 并没有获取到有效的线索。
然后通过抓包工具,抓包查看相关请求。发现请求失败的错误为:

Remote server closed the connection before sending response header

看这个错误的意思是与请求头Header相关。
我们通过抓包反复测试,发现当请求中Cookie的大小超过5k后,会复现该问题。
不超过5K

超过5K

找到原因后,我们排查Cookie比较大的原因,通过查看Cookie发现,里面会有一些重复的Cookie,然后让iOS相关同学去排查代码逻辑发现,我们WKWebView在往请求中同步Cookie时,没有去重,导致Cookie会重复追加,找到原因后,优化代码解决了该问题。所以请求时要保证我们Cookie不要超过5K。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

假装自己很用心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值