iOS日常BUG分析之网络请求缓存(0927)

1.问题描述

应产品需求,APP中大都存在发送验证码的功能;最近在工作中,发现了这么一个问题;A , B两个页面;A为一级页面,B为二级页面;B为A在push操作后的页面;在B页面中有发送验证码的逻辑,在所需参数填写完毕后,此时故意填写错误参数,网络请求后服务器返回错误提示信息。回到A页面再次进入B页面,此时正确填写所有参数,确认后提交后发现此时并没有发生网络请求,而是出现了上次的错误信息提示

思路一:

首先考虑到是网络缓存的问题,看代码,如下:


_sessionManager.requestSerializer.cachePolicy = NSURLRequestReloadIgnoringLocalCacheData;

并没有加载本地的缓存,那么问题出在哪里呢?

思路二:

是否是因为网络请求超时的原因,看代码,如下:

_sessionManager.requestSerializer.timeoutInterval = 30;

超时时间设置为30s,发送验证码的倒计时是60s;

最后把超时时间修改为60s,并且在post的请求里面添加了NSURLRequestReloadIgnoringLocalCacheData的设置,然后跑项目,问题解决了。

综上

问题来源是post的请求缓存可能出现了(但是项目本身里面没有,这个问题还有待研究);希望小伙伴有知道具体原因的,不吝赐教QAQ;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,073评论 19 139
  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 10,679评论 1 23
  • AFHTTPRequestOperationManager 网络传输协议UDP、TCP、Http、Socket、X...
    Carden阅读 10,563评论 0 12
  • 概览 缓存组件应该说是每个客户端程序必备的核心组件,试想对于每个界面的访问都必须重新请求势必降低用户体验。但是如何...
    默默_David阅读 5,969评论 1 9
  • iOS开发系列--网络开发 概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可...
    lichengjin阅读 9,213评论 2 7

友情链接更多精彩内容