iOS--WKWebView Cookie注入

2018-09-26  本文已影响30人  代码移动工程师

WKWebView Cookie注入

在一些项目中我们需要通过webView来访问内容,那么就可能用到cookie,今天就来说一下,在iOS开发中如何向webView中注入cookie。

设置cookie内容

/// 创建cookie 此处只为示例
    
    let cookieString =  "document.cookie='cookie'"
    
    /// 注入cookie
    let userScript = WKUserScript.init(source: cookieString,
                                       injectionTime: .atDocumentStart,
                                       forMainFrameOnly: false)
                                       
    let userController = WKUserContentController.init()
    
    userController.addUserScript(userScript)
    
    webViewConfig.userContentController = userController
    
    webView = WKWebView.init(frame: frame, configuration: webViewConfig)

其中 'cookie' 具体为你当前所在项目或者所需要的功能需要的内容,

一般的会是 Key=Value 结构,每对键值对需要要 ';' 来隔开。

举个例子

某个项目cookie需要上传用户的token,

并且规定了token的key为固定的一段字符串:"abcdefg"

并且cookie的域名设置为根目录: /

cookie的域名为:baidu.com

那么最后生成的Cookie就是 'abcdefg=token;Path=/;Domain=baidu.com;'

然后代码上就这么写

/// 创建cookie字符串
let cookieString =  "document.cookie='abcdefg=token;Path=/;Domain=baidu.com;'"

上一篇下一篇

猜你喜欢

热点阅读