我正在开发一个项目,要求从某个站点跟踪“ajax ones”请求,访问其中一些请求的响应有效负载并对其进行操作。
到目前为止,我设法使用webRequest api跟踪请求并访问其标头,唯一的问题是我无法找到访问这些响应中的实际数据。
甚至可能吗?。
请随时发布任何有用的想法或参考资料。
谢谢你,祝你有个愉快的一天。
修改
iam正在寻找的一个例子是网络面板中的响应选项卡,它是chrome开发人员工具的一部分。
答案 0 :(得分:7)
网络面板是 HAR ( HTTP存档格式)日志的HTML表示形式。您可以使用devtools.network API
跟踪网络面板的每个元素。
您可以参考以下代码,其中 TCP连接时间被跟踪,作为使用devtools.network API
和HAR Log
开始的参考。
已注册devtools.html
用于跟踪网络面板事件
{
"name": "Network Demo",
"description": "This is a sample for API's available for Network",
"devtools_page": "devtools.html",
"manifest_version": 2,
"version": "2"
}
已注册devtools.js
以遵守CSP。
<html>
<head>
<script src="devtools.js"></script>
</head>
<body></body>
</html>
以下代码中的req返回HAR Log,您可以使用它来阅读您需要的内容;我在这里使用了HAR TCP Connection time
chrome.devtools.network.onRequestFinished.addListener(function(req) {
// Displayed sample TCP connection time here
console.log(req.timings.connect);
});
答案 1 :(得分:1)
只有在“开发人员工具”窗口打开时,devtools.network API才有效。对于日常浏览,无法访问响应数据。有一个feature request开放,讨论阅读/编辑响应主体。