如何使用 Tampermonkey 脚本跟踪网站的传出请求及其响应?

dev*_*ain 5 javascript google-chrome request tampermonkey

我想开发一个Tampermonkey脚本,它的作用类似于Wireshark(嗅探传出请求及其响应),但在 Chrome(或其他浏览器)的当前选项卡中。

首先,这可能吗?如果是这样,你知道我可以用什么作为起点吗?

如果不是,是否有其他解决方案来实现这一目标(更底层)?

Pte*_*tyl 1

是的,您当然可以,但您不需要 TamperMonkey。大多数允许您为其开发扩展的浏览器都允许您观察和分析流量。

对于 chrome,您需要使用 webRequest:

https://developer.chrome.com/extensions/webRequest
Run Code Online (Sandbox Code Playgroud)

上述网页提供了有关所需权限以及如何使用 API 的说明。

例如:

要为 Web 请求注册事件侦听器,您可以使用常用 addListener() 函数的变体。除了指定回调函数之外,您还必须指定过滤器参数,并且可以指定可选的额外信息参数。

Web 请求 API 的 addListener() 的三个参数具有以下定义:

var callback = function(details) {...};
      var filter = {...};
      var opt_extraInfoSpec = [...];
chrome.webRequest.onBeforeRequest.addListener(
        callback, filter, opt_extraInfoSpec);
Run Code Online (Sandbox Code Playgroud)