网络请求拿到旧数据

前两天遇到一个问题,就是网络请求拿到永远是旧的数据,大概15分钟后就拿一次最新的。
1)查了数据,系统都是旧的,说明的确拿的是旧数据。
2)Get返回的时候是成功的,可是我用Charles去网络抓包,发现根本没有网络请求发出。
3)自己调试了半天未果,然后和android端沟通发现他们那边没有这样的问题。然后我就怀疑是不是AFN会拿缓存的数据,网上查了资料,问一些同事都说应该不会。
4)后来只能问了服务器那边,那边的确做了限制15分钟再访问的限制,主要是怕客户端申请太多会影响性能。
5)最后就在服务端的建议,header里面添加了一个参数,保证每次都拿到最新的,相当于取消15分钟的限制。代码如下。

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
            manager.requestSerializer = [AFJSONRequestSerializer serializer];
            manager.responseSerializer = [AFJSONResponseSerializer serializer];
            [manager.requestSerializer setValue:token forHTTPHeaderField:@"token"];
            [manager.requestSerializer setValue:@"max-age = 0" forHTTPHeaderField:@"Cache-Control"];

你可能感兴趣的:(网络请求拿到旧数据)