1) 我已经集成了 webView
并且我正在使用一些字符串设置 user-agent
。当我第一次加载 webView
时,它会正确设置,但是当我通过设置不同的 user-agent
字符串来Reload
时,它不会设置。它只是设置了以前的user-agent
。我尝试清除缓存,但仍然无效。
2)我从ViewWillAppear
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self loadWebView];
}
-(void)loadWebView
{
NSURL *webURL = [NSURL URLWithString:@"http://some url"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:webURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:kTimeoutInterval];
[request setValue:@"some String" forHTTPHeaderField:@"user-agent"];
webView.delegate = self;
[webView loadRequest:request];
}
最佳答案
经过长时间的努力,我解决了这个问题,如下所示
我观察到,如果您使用
user-agent
在webView
中加载任何 url 设置它。一段时间后,您加载了不同的 url
和不同的用户代理
,但使用了相同分配的 WebView instane。Web View 将加载新的 url,但无法设置新的用户代理。它只是设置您在第一次加载之前设置的旧设置。在启动
UIWebview
的新实例之前,您不能更改(或者我们可以说用户代理可以在每个 session 中设置一次)。- 我为这个问题所做的是,当我
想要设置新的
用户代理
。
关于ios - 将以前的用户代理设置为 webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34415735/