WKWebView открыть SRC в HTML - PullRequest
       7

WKWebView открыть SRC в HTML

0 голосов
/ 19 декабря 2018

Здравствуйте. Я пытаюсь загрузить html со следующим элементом в WKWebView:

<iframe align=\"middle\"
 allowtransparency=\"\"
 frameborder=\"0\"
 height=\"820px\"
 id=\"\"
 scrolling=\"no\"
 seamless=\"\"
 src=\"//my.site.ru/files_static/edd/2016/speech_countries/6/first.html\" 
 width=\"100%\">
</iframe>

WKWebView не может загрузить содержимое, и вместо него отображается пустой экран.Но если я добавляю https или http к src, элемент загружается успешно:

<iframe align=\"middle\"
 allowtransparency=\"\"
 frameborder=\"0\"
 height=\"820px\"
 id=\"\"
 scrolling=\"no\"
 seamless=\"\"
 src=\"http://my.site.ru/files_static/edd/2016/speech_countries/6/first.html\" 
 width=\"100%\">
</iframe>

Я искал какое-то свойство для установки протокола по умолчанию для WKWebView в WKWebView, WKPreferences, WKWebViewConfiguration, но ничего не нашел.Может ли WKWebview загружать html по ссылке без протокола?

Найден ответ: вам нужно установить строку baseUrl при вызове loadHtmlString

1 Ответ

0 голосов
/ 19 декабря 2018

Вы можете сделать html-контент относительно "базового" URL ...

Я предполагаю, что вы используете .loadHTMLString(...)?

Если это так, измените src=на:

src=\"/files_static/edd/2016/speech_countries/6/first.html\"

и измените .loadHTMLString() на:

theWebView.loadHTMLString(htmlString, baseURL: URL(string: "http://my.site.ru"))

или https://my.site.ru

...