我正试图在IOS中实现Http。
我使用以下代码向服务器发送GET命令。
SERVER_IP = @"xxx.xx.xxx.xxx";
PORT = @"12345";
USER_ID = @"1234-1234-1234-1234-1234";
USER_PWD = @"123456";
url = [NSURL URLWithString:[NSString stringWithFormat:@"http://%@:%@/message/user/%@",SERVER_IP,PORT,USER_ID]];
[request setHTTPMethod:@"GET"];
request = [NSURLRequest requestWithURL:url];
NSDictionary *header = [request allHTTPHeaderFields];
[header setValue:@"Authorization" forKey:USER_PWD];
[NSURLConnection sendAsynchronousRequest:request queue:queue completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
NSString *html = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@",html);
}];它在日志中显示**The resource requires authentication, which was not supplied with the request**。
我已经设置了参数header,但不知道如何使用它。
有人能帮我,教我如何实现GET命令和设置密码吗?
发布于 2014-09-25 10:12:34
使用以下方法:
[request setValue:@"xxx" forHTTPHeaderField:@"Content-Type"];但是你必须把NSURLRequest改为NSMutableURLRequest,请检查Zaph的答案。
发布于 2014-09-25 10:10:31
头信息被添加到URLRequest中。
创建一个NSMutableURLRequest并使用setValue:forHTTPHeaderField:方法将标题添加到请求中。
还有许多其他设置可用于NSMutableURLRequest。
发布于 2014-09-25 10:12:44
您需要以某种方式在NSURLRequest上设置标头,这样就可以了。
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60];
[request setHTTPMethod:@"GET"];
[request setValue:USER_PWD forHTTPHeaderField:@"Authorization"];https://stackoverflow.com/questions/26035674
复制相似问题