Send custom headers with UIWebView loadRequest

Posted by Thomas Clayson on Stack Overflow See other posts from Stack Overflow or by Thomas Clayson
Published on 2012-10-11T16:48:55Z Indexed on 2012/10/12 9:38 UTC
Read the original article Hit count: 418

Filed under:
|
|
|

I want to be able to send some extra headers with my UIWebView loadRequest method.

I have tried:

NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://www.reliply.org/tools/requestheaders.php"]];
[req addValue:@"hello" forHTTPHeaderField:@"aHeader"];

[self.theWebView loadRequest:req];

I have also tried subclassing the UIWebView and intercepting the - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType method.

In that method I had a block of code which looked like this:

NSMutableURLRequest *newRequest = [request mutableCopy];
for(NSString *key in [customHeaders allKeys]) {
    [newRequest setValue:[customHeaders valueForKey:key] forHTTPHeaderField:key];
}
[self loadRequest:newRequest];

But for some unknown reason it was causing the web view to not load anything (blank frame) and the error message NSURLErrorCancelled (-999) comes up (all known fixes don't fix it for me).

So I am at a loss as to what to do. How can I send a custom header along with a UIWebView request?

Many thanks!

© Stack Overflow or respective owner

Related posts about iphone

Related posts about ios