使用AFNetworking出现Code=-1011 "

2017-01-03  本文已影响2640人  iAzure

今天在学习使用AFNetworking 3.1的时候出现了Code=-1011 "Request failed: internal server error (500)的错误,看网上很多人也在找解决办法,我这边已经解决了,可以提供给大家参考一下。

在使用AFNetworking之前自己写了一个Demo,就是给屏幕上两个按钮添加了点击事件:

-(void)clickGet01Data:(id)sender
{
    
    NSString *urlStr = @"http://XXXXXXXXX";
    
    AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
    [session GET:urlStr parameters:nil progress:^(NSProgress * _Nonnull downloadProgress) {
        ;
    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSLog(@"Success!");
        NSLog(@"%@",responseObject);
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSLog(@"Fail");
    }];
}
-(void)clickGet02Data:(id)sender
{
    
    NSString *urlStr = @"http://XXXXXXXXX";
    
    AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
    [session GET:urlStr parameters:nil progress:^(NSProgress * _Nonnull downloadProgress) {
        ;
    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSLog(@"Success!");
        NSLog(@"%@",responseObject);
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        
        NSLog(@"%@",error);
    }];
}

运行的时候一切正常。

但是使用的时候,同时调用上述两个函数中的代码,第二个就报了Code=-1011 "Request failed: internal server error (500)的错误。

我这边服务器规定,在clickGet01Data中代码执行之后,得到了Cookie,有了这个Cookie,clickGet02Data才能够拿到数据。

所以在我这里的解决办法就是,让两段代码运行在不同的点击事件中,使前面的代码有足够的时间获得Cookie。

综上所述,我这里出现Code=-1011 "Request failed: internal server error (500)的原因是Get数据时没有相应的Cookie。

——本人的第一篇技术文章,有任何问题请各位大神在留言区多指教,谢谢!

上一篇下一篇

猜你喜欢

热点阅读