Проблема с NSString и NSMutableURLRequest - PullRequest
1 голос
/ 07 мая 2009

У меня проблемы с добавлением заголовка в NSMutableURlRequest, проблема в том, что, когда я добавляю заголовок ниже «Авторизация», он не отображается. Однако, если я заменим переменную моего экземпляра «auth» ниже статической строкой exp (@ «asdadsadsadga»), появится заголовок «Authorization». Я довольно потерян в этот момент.

NSURL *url = [NSURL URLWithString:@"https://www.google.com/analytics/feeds/accounts/default"];
NSMutableURLRequest *profileRequest = [NSMutableURLRequest requestWithURL:url];

NSLog(auth); //prints correctly
NSString *authString = [NSString stringWithFormat:@"GoogleLogin Auth=%@", auth];
[profileRequest addValue:authString forHTTPHeaderField:@"Authorization"];

NSDictionary *allheaders = [profileRequest allHTTPHeaderFields];

for (id key in allheaders)
{
  //Nothing prints
  NSLog(@"key: %@, value: %@", key, [allheaders objectForKey:key]);
}

NSLog(auth); //Prints correctly

Ответы [ 2 ]

1 голос
/ 07 мая 2009

Сначала поменяйте NSLog (auth) с NSLog (@ "% @", auth). Первый опасен и может раскрыть часть того, что здесь происходит. Вы также должны попробовать добавить в начале:

auth = @"asdasdasdad";

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

NSLog(@"%@", [profileRequest allHTTPHeaderFields];

Это может пролить свет. Я подозреваю, что проблема в вашей переменной auth, возможно, связанной с управлением памятью, а не в NSMutableURLRequest.

0 голосов
/ 23 ноября 2009

Код, который вы используете для генерации строки base64Encoded, поврежден.

Попробуйте использовать метод, описанный в нижней части страницы: http://cocoawithlove.com/2009/06/base64-encoding-options-on-mac-and.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...