如何在 iOS 上关注 "queue" 和 AFNetworking/NSURLConnection
How should a follow "queue" on iOS with AFNetworking/NSURLConnection
我的应用程序中有以下实现:
- 使用其 ID 关注的主题列表。
- 一个在因互联网 dropping/server 失败而失败时重试连接的系统。
假设用户非常快速地点击了 3 个关注按钮。
对于每一次点击,NSURLConnection 开始分配给该用户该主题
考虑到以下可能发生的情况,应该如何处理:
A) 所有 3 个连接都失败。所有 3 个都需要重试,但每个都有不同的参数 - 主题 ID。
B) 只有 2 个连接失败,第三个连接成功。
C) 第一次连接失败,但在用户按下取消关注按钮后也失败了。
失败,在这种情况下,我的意思是出现一个提示用户重试的弹出窗口。
发生这种情况是因为 NSURLConnection 收到 404 或超时。
作为规则,您不应该让用户在连接失败时关闭弹出窗口,而应该在 UI 中显示一些指示器。毕竟,用户通常无能为力来修复连接,如果 he/she 不想要,用户也不会请求数据,所以一旦网络恢复就静静地重试几乎是总是正确的行为,使用户的行为变得多余。
在每种情况下,开始观察可达性变化,然后在可达性表明请求可能成功时重试。
我的应用程序中有以下实现:
- 使用其 ID 关注的主题列表。
- 一个在因互联网 dropping/server 失败而失败时重试连接的系统。
假设用户非常快速地点击了 3 个关注按钮。
对于每一次点击,NSURLConnection 开始分配给该用户该主题
考虑到以下可能发生的情况,应该如何处理:
A) 所有 3 个连接都失败。所有 3 个都需要重试,但每个都有不同的参数 - 主题 ID。
B) 只有 2 个连接失败,第三个连接成功。
C) 第一次连接失败,但在用户按下取消关注按钮后也失败了。
失败,在这种情况下,我的意思是出现一个提示用户重试的弹出窗口。
发生这种情况是因为 NSURLConnection 收到 404 或超时。
作为规则,您不应该让用户在连接失败时关闭弹出窗口,而应该在 UI 中显示一些指示器。毕竟,用户通常无能为力来修复连接,如果 he/she 不想要,用户也不会请求数据,所以一旦网络恢复就静静地重试几乎是总是正确的行为,使用户的行为变得多余。
在每种情况下,开始观察可达性变化,然后在可达性表明请求可能成功时重试。