【问题标题】:How to get response headers of a request URL from UIWebView Delegates?如何从 UIWebView Delegates 获取请求 URL 的响应标头?
【发布时间】:2014-09-25 13:17:09
【问题描述】:

我需要request URL 中的response headers,我需要在UIWebview Delegate method webViewDidFinishLoad 中接收和处理:?但我不明白如何实现它。请注意,我不需要请求标头而是响应标头。

一个想法是创建一个NSUrlConnection 并再次触发请求以在完成块中接收它,但我不想打两个电话。必须有某种方式由 UIWebView 处理并且可以检索响应标头。我只是不知道该怎么做。欢迎任何想法。

【问题讨论】:

    标签: ios objective-c uiwebview uiwebviewdelegate response-headers


    【解决方案1】:

    试试这个:

     NSCachedURLResponse *resp = [[NSURLCache sharedURLCache] cachedResponseForRequest:webView.request];
    

    但这仅适用于可缓存的网址!

    【讨论】:

    • 我没有缓存响应
    • 在使用 UIWebView 之前创建 NSUrlConnection 并触发请求是什么意思?您可以使用响应,例如:[webView loadData:responseData MIMEType:[response MIMEType] textEncodingName:[response textEncodingName] baseURL:[response URL]];
    • 我想获取 UIWebview 页面点击的响应标头。因此,我认为在这种情况下这是不可能的。
    • 为什么?您可以像这样使用 shouldStartLoadWithRequest:stackoverflow.com/a/22792754/3008827
    • 太好了,这样我只提出了一个请求!将尝试并在这里ping。谢谢。但我希望是否有一种方法可以直接在 webview 委托方法中的几行中获取它,就像我们对请求标头所拥有的那样。
    猜你喜欢
    • 1970-01-01
    • 2017-07-28
    • 1970-01-01
    • 2020-11-16
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 2016-03-21
    • 1970-01-01
    相关资源
    最近更新 更多