WKWebView не поддерживает некоторые веб-страницы в iOS

#ios #swift #wkwebview

#iOS #swift #wkwebview

Вопрос:

В моем приложении есть очень простой браузер для просмотра веб-страниц, который отлично работает, за исключением некоторых сайтов. Например, https://apsny.market не загружает страницу, потому что «браузер не поддерживается». Я попытался загрузить эту страницу в Safari и Chrome в iOS, и она работает идеально, как и предполагалось. Возможно, мне нужно что-то установить в WKWebViewConfiguration, но я попытался, и ничего не произошло… Я буду признателен за любые идеи. Заранее спасибо!

И мой простой код:

 guard let myURL = URL(string: url) else { return }
let webConfiguration = WKWebViewConfiguration()
let webView = WKWebView(frame: .zero, configuration: webConfiguration)
let myRequest = URLRequest(url: myURL)
webView.load(myRequest)
webView.navigationDelegate = self
 

Ответ №1:

Этот сайт блокирует мобильные браузеры, проверяя User-Agent значение заголовка в вашем запросе, но вы можете изменить пользовательский агент для вашего веб-просмотра на настольный:

 webView.customUserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36"