Как использовать базовую аутентификацию с getObject RestKit?

Я попробовал следующее, чтобы установить базовое имя пользователя и пароль для аутентификации, но, похоже, он не передает базовую аутентификацию в запросе.

secureManager = [[RKObjectManager objectManagerWithBaseURL:@"http://localhost:3000"] retain];

secureManager.client.username = uname;
secureManager.client.password = pwd;


RKObjectLoader *loader = [svc getObject:user delegate:self];

loader.userData = [NSNumber numberWithInt:RequestLogin];

ОБНОВЛЕНИЕ: нашел свою проблему, мне нужно было добавить следующий фрагмент

secureManager.client.forceBasicAuthentication = YES;

person MonkeyBonkey    schedule 17.09.2011    source источник


Ответы (1)


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

// Set the Username and Password
[RKObjectManager sharedManager].client.username = @"username"; 
[RKObjectManager sharedManager].client.password = @"letmein";

// Make our Request
[[RKObjectManager sharedManager] getObject:user mapResponseWith:mapping delegate:self];

Как указывает MonkeyBonkey в комментариях, вам может потребоваться принудительная аутентификация с использованием флага:

[RKObjectManager sharedManager].client.forceBasicAuthentication = YES;
person Suhail Patel    schedule 17.09.2011
comment
исправлено добавлением vc.client.forceBasicAuthentication = YES; - person MonkeyBonkey; 22.09.2011
comment
Отлично, я добавлю это в свой ответ и зачислю вам на счет любых будущих пользователей. - person Suhail Patel; 22.09.2011
comment
Что такое пользователь в этой ситуации? - person Kyle Clegg; 27.07.2012