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;'"