如何使用 Tampermonkey 脚本跟踪传出请求及其对网站的响应?
How to track outgoing requests and their response of a website with a Tampermonkey script?
我想开发一个 Tampermonkey 脚本,其行为类似于 Wireshark(嗅探传出请求及其响应),但在当前选项卡中Chrome(或其他浏览器)。
首先,这可能吗?如果是这样,你知道我可以作为起点的什么吗?
如果不是,是否有其他解决方案(更底层)?
是的,您当然可以,但您不需要 TamperMonkey。大多数允许您为其开发扩展的浏览器都允许您观察和分析流量。
在chrome的情况下,需要使用webRequest:
https://developer.chrome.com/extensions/webRequest
以上网页提供了有关所需权限以及如何使用 api 的说明。
例如:
To register an event listener for a web request, you use a variation
on the usual addListener() function. In addition to specifying a
callback function, you have to specify a filter argument and you may
specify an optional extra info argument.
The three arguments to the web request API's addListener() have the
following definitions:
var callback = function(details) {...};
var filter = {...};
var opt_extraInfoSpec = [...];
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);
我想开发一个 Tampermonkey 脚本,其行为类似于 Wireshark(嗅探传出请求及其响应),但在当前选项卡中Chrome(或其他浏览器)。
首先,这可能吗?如果是这样,你知道我可以作为起点的什么吗?
如果不是,是否有其他解决方案(更底层)?
是的,您当然可以,但您不需要 TamperMonkey。大多数允许您为其开发扩展的浏览器都允许您观察和分析流量。
在chrome的情况下,需要使用webRequest:
https://developer.chrome.com/extensions/webRequest
以上网页提供了有关所需权限以及如何使用 api 的说明。
例如:
To register an event listener for a web request, you use a variation on the usual addListener() function. In addition to specifying a callback function, you have to specify a filter argument and you may specify an optional extra info argument.
The three arguments to the web request API's addListener() have the following definitions:
var callback = function(details) {...};
var filter = {...};
var opt_extraInfoSpec = [...];
chrome.webRequest.onBeforeRequest.addListener(
callback, filter, opt_extraInfoSpec);