2013-11-28 5 views
0

Я пытаюсь подключиться к Серверу, для которого требуется имя пользователя и пароль для аутентификации. мой код выглядит следующим образом:setValue: forHTTPHeaderField: @ «Авторизация» не работает

NSData *postData = [post dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; 

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]]; 

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init]; 
[request setURL:url]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:@"username:password" forHTTPHeaderField:@"Authorization"]; 
[request setValue:postLength forHTTPHeaderField:@"Content-Length"]; 
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
[request setHTTPBody:postData]; 

Но это не работает, я всегда получаю сообщение об ошибке:

title>401 Authorization Required</title> 
</head><body> 
<h1>Authorization Required</h1> 
<p>This server could not verify that you 
are authorized to access the document 
requested. Either you supplied the wrong 
credentials (e.g., bad password), or your 
browser doesn't understand how to supply 
the credentials required.</p> 

При попытке подключения к серверу Wich Донту урожденному с удостоверением подлинности этого код код работает Великий. Итак, как правильно установить имя пользователя и пароль? Может ли кто-нибудь помочь мне, пожалуйста?

ответ

0

Вы должны указать домен сервера, попробуйте этот формат:

NSString *authen = [NSString stringWithFormat:@"%@\\%@:%@", m_domain, 
     m_account, m_password]; 
[request setValue:authen forHTTPHeaderField:@"Authorization"]; 

эта работа для меня!

Смежные вопросы