Вставка куки в WKWebView - PullRequest
       31

Вставка куки в WKWebView

0 голосов
/ 04 июля 2018

У меня в приложении webView, который открывает только один веб-сайт. Моя проблема: когда я хочу войти в сервисы сайта, мне нужно вставить cookie, который можно получить методом post с параметрами user и pass, который получает весь код сайта в html и наш cookie в нем заголовок.

У меня такой вопрос: как лучше всего решить эту странную задачу?

Я пробовал, например: Alamofire с пост-запросом, (response as html string) -> webView, (response.allHeaderFiles) -> webView, но это не лучшее решение, и оно не совсем работает должным образом.

1 Ответ

0 голосов
/ 04 июля 2018
 let controller = WKUserContentController()
    var source = "" 
    // Pass your cookie
    if let cookies = cookies {
      let cookieSource = cookies.map({"**Add your conditon if any**")
      source += cookieSource
    }
    controller.addUserScript(WKUserScript(source: source, injectionTime: .atDocumentStart, forMainFrameOnly: false))

Попробуй это.

A WKUserScript объект представляет собой скрипт, который может быть внедрен в веб-страницу.

ForMainFrameOnly - Булево значение, указывающее, должен ли скрипт вводиться только в

С помощью WKUserContentController вы можете достичь этого.

...