我想询问有关iPhone应用程序 objective-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
非常感谢
最佳答案
如果响应代码为 0
,则响应 response_get2
可能从未初始化,这可能表明请求存在与您的 Web 服务器无关的问题。
您设置了 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]);
}
关于iphone - HTTP 状态代码 = 0 (iPhone)( objective-c ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3177852/