Загрузить настольную версию WKWebView iOS 9
До недавнего времени
let url = NSURL (string:http://asite.com)
let request = NSMutableURLRequest(URL: url!)
//iOS loads the mobile version of asite.com which does not have the required DOM so we force the desktop version by setting new value forHTTPHeadrField
let newUserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.6 Safari/537.11"
request.setValue(newUserAgent, forHTTPHeaderField: "User_Agent")
let config = WKWebViewConfiguration()
//even though we dont need to see it the webpage needs to appear but we set its frame to CGRectZero so its hidden from user
let ghostWebView : WKWebView = WKWebView(frame:CGRectZero, configuration: config)
ghostWebView.loadRequest(request)
Это заставит настольную версию сайта. Однако он просто перестал работать. Не уверен, когда именно, но совсем недавно.
Есть идеи почему?
Также результаты Google показывают некоторое использование
"User-Agent"
для HTTPHeaderField и других
"User_agent"
какая разница между двумя?
Обновление: я решил проблему, изменив строку User Agent на
«Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit / 537.36 (KHTML, как Gecko) Chrome / 41.0.2227.1 Safari / 537.36»
Из которого я получил
http://www.useragentstring.com
Итак, мой новый вопрос: как часто меняются эти строки пользовательского агента, и есть ли у моего приложения возможность автоматического обновления до самой новой?