-(NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response {
if ([response isKindOfClass:[NSHTTPURLResponse class]])
{
NSHTTPURLResponse *HTTPResponse = (NSHTTPURLResponse *)response;
if ([HTTPResponse statusCode] == 301 || [HTTPResponse statusCode] == 302)
{
NSMutableURLRequest *mutableRequest = [request mutableCopy];
[mutableRequest setURL:[NSURL URLWithString:[[HTTPResponse allHeaderFields] objectForKey:@"Location"]]];
request = [mutableRequest copy];
[[self client] URLProtocol:self wasRedirectedToRequest:request redirectResponse:response];
}
}
return request;
}
NSURLProtocol处理重定向时需要注意301和302状态
最新推荐文章于 2020-03-02 14:13:21 发布