在iOS中使用WKWebView请求桌面网站

我全面search,但无法find一种方式来请求网站的桌面版本,而不依赖于网站本身(他们自己的“桌面版本”button)。

有没有办法做到这一点? 我想如果我能在UIWebView中使用它,可以在WKWebView上以相同的方式完成。

可能与用户代理:

NSUserDefaults.standardUserDefaults().registerDefaults(["UserAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A"]) 

我从这个来源find了useragentstring: http ://www.useragentstring.com/pages/Safari/

如果您只关注iOS 9版本的WKWebView,则有一个属性customUserAgent

 // Safari's User Agent (OS X 10.10) webview.customUserAgent = @"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.99 Safari/537.36"; // Reload webview [webview reloadFromOrigin]; 

customUserAgent的值为customUserAgent ,webview具有默认的用户代理。

另外,最好通过使用JavaScript来为网站修改视口来判断设备types。

至于WKWebView的iOS 8版本,NSUserDefaults技巧是唯一的方法。 在创buildWKWebView实例之前进行设置。