重难点bug解决记录

307 阅读1分钟

1.iOS发布作业 一直转圈 然后黑屏 作业发布了两次。

刚好后台这个接口设计有问题。 超过2min. 原则上是不允许的。

起初被黑屏这个操作误导了。  一直在关注黑屏的问题。  经过青花瓷抓包看到。  苹果手机黑屏会重发get请求(幂等请求,对服务器数据没影响)  不会重发post请求(非幂等请求)。 原以为发布两次作业是黑屏造成。但是发现发布作业是post请求,黑屏不会重发。 还是iOS urlInterceptor 重发机制导致。  但是发现重发有作判断 大于2min不会重发。  而weex调用streamModule没设置超时时间 默认是60s, 在2min的判断之内 刚好可以重发一次。 这样理解就完全说的通了。

不能取消一个正在执行的任务urlsessionDataTask

解决:

a: config.timeoutIntervalForRequest = RPC_TIMEOUT;//设置超时时间 

b. && [requestMethod isEqualToString:@"GET"

感受:

a.查看苹果开发者文档中心 多看英文注释 developer.apple.com/search/ 多用google少用百度吧。  

b. 开发的时候 可以多添加备注信息。 不然时间久了就忘了。