加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift从UIWebView响应中获取头文件

发布时间:2020-12-14 04:27:43 所属栏目:百科 来源:网络整理
导读:我无法从UIWebView响应中获取标头,因为响应显然尚未缓存.有解决方法吗?我尝试过 here的代码. 我的应用程序使用混合的原生iOS视图控制器和UIWebView.当我启动UIWebView会话时,我使用来自我的密钥链的auth令牌编写一个cookie,其中令牌从API登录中保存. 如果用
我无法从UIWebView响应中获取标头,因为响应显然尚未缓存.有解决方法吗?我尝试过 here的代码.

我的应用程序使用混合的原生iOS视图控制器和UIWebView.当我启动UIWebView会话时,我使用来自我的密钥链的auth令牌编写一个cookie,其中令牌从API登录中保存.

如果用户导航到Web视图中的另一个页面,则cookie似乎不正确.我的目标是从每个响应中获取auth cookie并将其保存为服务器的auth令牌随每个请求而更改.然后我想将令牌添加回新请求中.

下面的代码总是返回nil.我正试图从标题中获取一个身份验证令牌.

func webViewDidFinishLoad(webView: UIWebView) {
    if let request = webView.request {
        if let resp = NSURLCache.sharedURLCache().cachedResponseForRequest(request) {
            if let response = resp.response as? NSHTTPURLResponse {
                print(response.allHeaderFields)
            }
        }
    }
}

解决方法

在Swift 3中为我工作

func webViewDidFinishLoad(_ webView: UIWebView) { 
    let headers = webView.request?.allHTTPHeaderFields
    for (key,value) in headers! {
        print("key (key) value (value)")
    } 
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读