私はここで奇妙な問題を抱えています、そして私が同じ問題を抱えている人を他に見つけていないことに驚いています。
を作成するために使用AFNetworking
していAFJSONRequestOperation
ます。
初めてネットワーク接続が確立されたときに機能します。ただし、ネットワーク接続が確立されると同じコードが失敗し、「不正なURL」エラーが表示されます。
奇妙な部分は、アプリが失敗する前にサーバーにpingを送信することすらしないことです。私は、Charlesを使用してすべてのリクエストをスニッフィングしています。
他の誰かがこれを経験しましたか?
参考までに、コードは次のとおりです。
NSURL *url = [NSURL URLWithString:JOIN_URL];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:url];
// httpClient.parameterEncoding = AFJSONParameterEncoding;
NSString *path = [NSString stringWithFormat:@"%@?%@",JOIN_URL, getString];
NSMutableURLRequest *request = [httpClient requestWithMethod:@"GET" path:path parameters:nil];
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request
success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
NSLog(@"SUCCESS JSON: %@", JSON);
NSLog(@"RESPONSE URL: %@",response.URL);
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) {
NSLog(@"FAIL JSON: %@", JSON);
NSLog(@"FAIL ERROR: %@", error.description);
NSLog(@"RESPONSE URL: %@",response.URL);
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Connection Error" message:@"Cannot connect now, please try again" delegate:nil cancelButtonTitle:@"Okay" otherButtonTitles: nil];
[alert show];
}];
[operation start];