我正在开发一个项目,需要跟踪来自某个站点的“ajax 请求”,访问其中一些请求的响应有效负载并对其采取行动。
到目前为止,我设法使用webRequest api跟踪请求并访问它们的标头,唯一的问题是我无论如何都找不到访问这些响应中的实际数据。
甚至可能吗?
请随时发布任何可以提供帮助的想法或参考资料。
感谢,并有一个愉快的一天。
编辑:
我正在寻找的一个示例是网络面板中的响应选项卡,它是 chrome 开发人员工具的一部分。
我正在开发一个项目,需要跟踪来自某个站点的“ajax 请求”,访问其中一些请求的响应有效负载并对其采取行动。
到目前为止,我设法使用webRequest api跟踪请求并访问它们的标头,唯一的问题是我无论如何都找不到访问这些响应中的实际数据。
甚至可能吗?
请随时发布任何可以提供帮助的想法或参考资料。
感谢,并有一个愉快的一天。
编辑:
我正在寻找的一个示例是网络面板中的响应选项卡,它是 chrome 开发人员工具的一部分。
网络面板是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 连接时间
chrome.devtools.network.onRequestFinished.addListener(function(req) {
// Displayed sample TCP connection time here
console.log(req.timings.connect);
});
devtools.network API 仅在开发人员工具窗口打开时才有效。对于日常浏览,无法访问响应数据。有一个功能请求打开,其中讨论了阅读/编辑响应正文。