получить URL после перенаправления с помощью stringWithContentsOfURL - PullRequest
0 голосов
/ 13 сентября 2011
    NSString* HTML = [NSString stringWithContentsOfURL:url usedEncoding:&enc error:&error];

отлично работает, но если есть перенаправление, мне нужно знать URL перенаправленной страницы.

Есть идеи?

Спасибо ~~

Ответы [ 2 ]

2 голосов
/ 13 сентября 2011

Возможно, вы захотите использовать NSURLConnection и загрузить вручную, а не использовать метод stringWithContesOfURL.Затем вы можете установить URLConnectionDelegate для вашего соединения.Когда вы будете перенаправлены, соединение вызовет этот метод для вашего делегата:

- (NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse

Аргумент запроса предоставляет URL, на который вы перенаправлены.Вы можете проверить это и делать то, что вы хотите с ним.Если вы хотите, чтобы перенаправление продолжалось, вы должны вернуть его из метода вашего делегата.

1 голос
/ 24 ноября 2014

Вот, пожалуйста (синхронный подход):

NSURLResponse *response;
NSError *error;
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"URL_STRING"]];
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(%@,response.URL);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...