【问题标题】:How to inspect HTTP requests made by WebViews如何检查 WebView 发出的 HTTP 请求
【发布时间】:2025-11-29 09:45:01
【问题描述】:

如您所知,加载单个页面时会发送大量请求(图像、脚本、AJAX 等)。所以我需要得到所有这些请求并检查它们。

所以问题是:如何检查WebView 加载页面时发出的 HTTP 请求?

我想要:标头、方法、状态码、响应、cookies。


现在,我有:

 public  void onLoadResource(WebView view, String url){
    Log.d("my-tag", "onLoadResource = "  + url );
}

但这只会显示网址。

【问题讨论】:

  • 你解决了这个问题吗?如果你这样做了,是怎么做到的?

标签: android android-webview httprequest


【解决方案1】:

您可以在您的应用中获得的最好的方法是 WebViewClient.shouldInterceptRequest 方法,但它只有 URL。您目前无法获得您列出的任何内容。

如果您使用的是 Android 4.4,则可以使用 Chrome DevTools 进行调试。

【讨论】:

【解决方案2】:

看这里:https://gist.github.com/kibotu/32313b957cd01258cf67 你在 android >=21 处获得 http 标头

【讨论】:

    【解决方案3】:

    最简单的方法是使用代理。我使用Charles,但我确定还有其他人。在设备上,进入 WiFi 设置,长按您连接的那个,选择“修改网络”并启用高级选项。您可以在那里为整个设备配置代理设置。

    【讨论】:

    • 好的,但这看起来只是一种调试方法。有没有办法在应用程序中获取它?
    最近更新 更多