UIWebView Url攔截

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSLog(@"allHTTPHeaderFields********%@",request.allHTTPHeaderFields);
    if(![request.allHTTPHeaderFields valueForKey:@"Authorization"])
    {
        NSMutableURLRequest *mrequest = [[NSMutableURLRequest alloc] initWithURL:request.URL];
        [self setCookie];
        mrequest.HTTPShouldHandleCookies = YES;
        [mrequest setTimeoutInterval:20];
        [mrequest setHTTPMethod:@"GET"];
        [mrequest setValue:httpHeaderToken forHTTPHeaderField:@"Authorization"];
        [mrequest setValue:g_deviceInfo forHTTPHeaderField:@"device_info"];
        [webView loadRequest:mrequest];
        return  NO;
    }
    [self setCookie];
    return YES;
}


-(void)setCookie
{
    NSMutableDictionary *cookieProperties = [NSMutableDictionary dictionary];
    [cookieProperties setObject:@"AuthAccessToken" forKey:NSHTTPCookieName];
    [cookieProperties setObject:httpHeaderToken forKey:NSHTTPCookieValue];
    [cookieProperties setObject:@"s3.xtox.net" forKey:NSHTTPCookieDomain];
    
    NSHTTPCookie *cookieuser = [NSHTTPCookie cookieWithProperties:cookieProperties];
    [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookieuser];
}



NSString *urlstr= @"http://s3.xtox.net:5578";
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlstr]];
    [request setTimeoutInterval:20];
    [request setHTTPMethod:@"GET"];
    [request setValue:httpHeaderToken forHTTPHeaderField:@"Authorization"];
    [request setValue:g_deviceInfo forHTTPHeaderField:@"device_info"];
    [self setCookie];
 
    request.HTTPShouldHandleCookies = YES;
    [SVProgressHUD showWithStatus:nil];
    self.web.delegate = self;
    [self.web loadRequest:request];
相關文章
相關標籤/搜索