有没有一种在Chrome DevTools中仅使用XHR请求创建HAR文件的方法?
虽然我可以在DevTools中过滤请求,但当我将其保存为HAR文件时,它包含所有请求。
如果DevTools不支持此功能,是否有其他替代方法?
虽然我可以在DevTools中过滤请求,但当我将其保存为HAR文件时,它包含所有请求。
如果DevTools不支持此功能,是否有其他替代方法?
似乎没有直接过滤请求的方法。我的做法是,创建一个包含所有请求的har
文件,然后过滤该文件,并在删除不需要的请求后再保存它。
har
文件中的内容中有一个名为entries
的条目。它包含一个数组,其中包含我们发送的所有请求。我获取了har
文件的内容,并使用JSONPath
表达式进行了过滤。
过滤application/json
类型的表达式:$..entries[?(@.response.content.mimeType == "application/json")]
之后,我用过滤后的数组替换了har
文件中的原始数组,并将其重新保存。这样您就可以获得一个带有过滤请求的har
文件。同样,您可以使用相关的JSONPath
表达式来过滤XHR
或任何其他类型的请求。
最近我在为模拟 Playwright 中的网络调用做一些研究时遇到了同样的问题。它确实提供了仅记录您感兴趣的调用的功能。以下是链接: https://playwright.dev/docs/network#recording-har-with-cli
$..entries[?(@._resourceType == "xhr")]
- Sandeepa