,在主机字符串中不要包含scheme,也就是说要把https://
去掉,否则无法监听。
当使用网络可达性来决定接下来要做什么时,有以下几点需要重点注意的:
- 不要使用Reachability来决定是否发送一个网络请求。
- 当Reachability恢复了,要重试网络请求。
- 网络可达性的状态非常适合用来决定为什么网络请求会失败。
- 如果一个请求失败,应该告诉用户是离线导致请求失败的,而不是技术错误,例如请求超时。
有兴趣的可以看看WWDC 2012 Session 706, "Networking Best Practices"。
FAQ
Alamofire的起源是什么?
Alamofire是根据 Alamo Fire flower 命名的,是一种矢车菊的混合变种,德克萨斯的州花。
Router和Request Adapter的逻辑是什么?
简单和静态的数据,例如paths、parameters和共同的headers放在Router
。动态的数据,例如一个Authorization
header,它的值会随着一个认证系统变化,放在RequestAdapter
。
动态的数据必须放在ReqeustAdapter
的原因是要支持重试操作。当重试一个请求时,原来的请求不会重新建立,也就意味着Router
不会再重新调用。RequestAdapter
可以重新调用,这可以让我们在重试请求之前更新原始请求的动态数据。
完
作者:Lebron_James
链接:https://www.jianshu.com/p/903b678d2d3f
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。