美文网首页ios开发
【WKWebview填坑(二)】WKWebview和H5的Coo

【WKWebview填坑(二)】WKWebview和H5的Coo

作者: 岳重亮 | 来源:发表于2018-09-28 20:59 被阅读176次

1.定义一个方法,方法名setTheCookieOfWebView,方法具体实现如下:

NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
//先删除Userid和isbind的cookie(你自己那边表示登录状态的name)
[self.myWebView evaluateJavaScript:@"document.cookie='Userid=;isbind=;'" completionHandler:nil];

for (NSHTTPCookie *cookie in [cookieStorage cookies]) {
    
    NSString *nameStr = [NSString stringWithFormat:@"document.cookie='%@=%@'",cookie.name,cookie.value];
    [self.myWebView evaluateJavaScript:nameStr completionHandler:nil];
}

2.在wkwebview的代理中添加上面写的方法及可。

/* 开始返回内容 */
-- (void)webView:(WKWebView *)webView didCommitNavigation:(WKNavigation *)navigation{
[self setTheCookieOfWebView];
NSLog(@"开始返回内容");
}

ps:wkwebview的坑还是比较多的,特别是cookie的问题,每次请求的时候不会自动带,所以采用了另外一种思路,直接取本地的cookie注入js的document,也解决了web有时候取不到cookie的问题。暂时没发现什么问题,如有问题欢迎留言讨论。

项目接近尾声了,wkwebview的封装也差不多了,等有时间整理下把js和web的交互写下。

相关文章

网友评论

    本文标题:【WKWebview填坑(二)】WKWebview和H5的Coo

    本文链接:https://www.haomeiwen.com/subject/hghmoftx.html