Аутентификация NSURL, когда сервер не представляет собой проблему

Я нахожусь в ситуации, куда я должен отправить аутентификацию (основная Аутентификация HTTP) к серверу, но сервер не отправляет мне проблему сначала. Это было разыскано, чтобы быть дубликатом переключателя wget - auth-no-challenge. Моя проблема, я не вижу способа заставить NSURL делать это.

Я реализовал стандартную аутентификацию в своем делегате NSURLConnection, но -connection: didReceiveAuthenticationChallenge: метод не становится названным.

Там какой-либо путь состоит в том, чтобы вызвать этот вызов или встроить информацию аутентификации для этой странной ситуации?

6
задан Marcus S. Zarra 13 December 2009 в 22:43
поделиться

2 ответа

Вы можете добавить информацию об авторизации в запрос вручную, добавив ее в заголовок запроса следующим образом:

NSString *authString = [[[NSString stringWithFormat:@"%@:%@",user, password] dataUsingEncoding:NSUTF8StringEncoding] base64Encoding];        
[request setValue:[NSString stringWithFormat:@"Basic %@", authString] forHTTPHeaderField:@"Authorization"]; 

Где запрос - ваш NSMutableURLRequest и user / password являются вашим соответствующим именем пользователя и паролем NSString's

I '

8
ответ дан 8 December 2019 в 13:46
поделиться

Я считаю, что вы можете добавить имя пользователя и пароль в NSURL

Пример

NSURL *url = [NSURL URLWithString:@"http://username:password@some.host.com/"];
9
ответ дан 8 December 2019 в 13:46
поделиться