Я пытаюсь добавить базовую авторизацию в заголовок моего запроса. Код ниже компилируется, и я не получаю никаких ошибок во время выполнения. Однако на стороне сервера я не вижу «Авторизация» в шапке вообще.
Мне удалось реализовать метод didReceiveAuthenticationChallenge, и это работает, но я не понимаю, почему я должен сделать это таким образом. Я просто хочу всегда добавлять базовую аутентификацию к каждому запросу.
Меня не интересует использование ASIHTTPRequest.
Спасибо за помощь!
Это мой код ниже:
NSURL *url = [[NSURL alloc] initWithString:@"http://localhost:8000/MyWebService"];
self.userName = @"myusername";
self.password = @"mypassword";
NSMutableString *credentials = [[NSMutableString alloc] initWithFormat:@"%@:%@", userName, password];
NSString *encodedCredentials = [[credentials dataUsingEncoding:NSUTF8StringEncoding] base64EncodedString];
NSString *authHeader = [NSString stringWithFormat:@"Basic %@", encodedCredentials];
NSMutableURLRequest* req = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:5];
[req addValue:authHeader forHTTPHeaderField:@"Authorization"];
self.urlConnection = [[NSURLConnection alloc] initWithRequest:req delegate:self startImmediately:YES];
if (self.urlConnection) {
self.receivedData = [NSMutableData data];
}
else {
errorLabel.text = @"Error connecting to the server";
}