Код состояния HTTP = 0 (iPhone) (цель c) - PullRequest
2 голосов
/ 05 июля 2010

Я хочу спросить о проблеме цели приложения iPhone C.

Я написал программу для хранения файлов cookie и перехода по другому URL-адресу для получения файлов cookie.Однако я обнаружил, что один из кодов состояния возврата равен 0. Содержимое HTML-кода пустое.

Кто-нибудь может мне помочь?Ниже мой код.

// create a new mutable url
 NSMutableURLRequest *request_get2 = [[[NSMutableURLRequest alloc] init] autorelease];
    [request_get2 setURL:[NSURL URLWithString:@"http://www.example.com"]];  
 [request_get2 setHTTPMethod:@"GET"];
 [request_get2 setValue:@"text/html; charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
 [request_get2 setValue:@"http://www.example.com" forHTTPHeaderField:@"Referer"];
 [request_get2 setHTTPShouldHandleCookies:YES];
        // cookiesString is a string, the format is "cookieName=cookieValue;"
 [request_get2 setValue: (NSString *) cookiesString forHTTPHeaderField:@"Cookie"];

 // doGet - response
 NSHTTPURLResponse *response_get2 = nil;
 NSError *error_get2 = nil;
 NSData *responseData_get2 = [NSURLConnection sendSynchronousRequest:request_get2 returningResponse:&response_get2 error:&error_get2];
 NSString *data_get2 = [[NSString alloc]initWithData:responseData_get2 encoding:NSUTF8StringEncoding];


 NSString *responseURL_get2 = [[response_get2 URL] absoluteString];           // null value
 NSString *responseTextEncodingName_get2 = [response_get2 textEncodingName];  // null value
 NSString *responseMIMEType_get2 = [response_get2 MIMEType];                  // null value
 NSUInteger *responseStatusCode_get2 = [response_get2 statusCode]; //[responseStatusCode intValue]; // the status code is 0

Большое спасибо

1 Ответ

3 голосов
/ 05 июля 2010

Если вы получите 0 для кода ответа, ответ response_get2 вероятно никогда не был инициализирован, что может указывать на проблему с запросом, не связанным с вашим веб-сервером.

Вы установили error_get2, поэтому проверьте его значение после размещения запроса:

if (!error_get2) {
    NSString *responseURL_get2 = [[response_get2 URL] absoluteString];           // null value
    NSString *responseTextEncodingName_get2 = [response_get2 textEncodingName];  // null value
    NSString *responseMIMEType_get2 = [response_get2 MIMEType];                  // null value
    NSUInteger *responseStatusCode_get2 = [response_get2 statusCode]; //[responseStatusCode intValue]; // the status code is 0
}
else {
    NSLog(@"something went wrong: %@", [error_get2 userInfo]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...