可以从iPhone同时调用多个Web服务吗



我制作了一个社交网络应用程序,我正在调用各种Web服务来获取用户的不同数据,如好友列表、最新更新等。

但是,当我在后台调用一个Web服务,然后调用另一个时,第一个停止,第一个没有响应。。。

该怎么办?

是否不能同时调用两个Web服务??

我不确定您是如何调用服务的。如果你愿意展示你的代码,任何人都可以帮你更多。。。

你可以试试这个-

    - (NSData *)fetchProfileData:(NSString *)accessToken{
          NSURL *url = [NSURL URLWithString:serverURL];
          request= [NSMutableURLRequest requestWithURL:url];
          [request setHTTPMethod:@"POST"];
          NSError *error;
          NSHTTPURLResponse *response;
          NSData *responseData = [NSURLConnection sendSynchronousRequest:request   returningResponse:&response error:&error];
         return responseData;
    }

调用其他web服务为每个服务(如)创建单独的功能

    - (NSData *)fetchFriendsList:(NSString *)accessToken{
       //write your logic, you see above method for more details 
    } 
    - (NSData *)fetchUpdates:(NSString *)accessToken{
       //write your logic, you see above method for more details
    }

从您的视图控制器(如)调用以上方法

    [NSThread detachNewThreadSelector:@selector(callFetchProfileDataServices:) toTarget:self withObject:@"userToken"];
    -(void)callFetchProfileDataServices:(NSString*)token{
        NSData *response = [self fetchProfileData:token];
        //now parse response data data using suitable parser 
    }

您需要为每个服务创建单独的线程,还可以将这些数据保存在成员字段中。

最新更新