问题描述
我正在尝试为chromedp查找每个请求的响应大小 我尝试了以下代码
chromedp.ListenTarget(
ctx,func(ev interface{}){
if ev,ok := ev.(*network.EventResponseReceived); ok {
fmt.Println("event received:")
fmt.Println(ev.Type)
var len = ev.Response.EncodedDataLength;
fmt.Println(ev.Response.URL + ":" + fmt.Sprintf("%f",len))
return
}
},)
但是EncodedDataLength是到目前为止为此请求接收的字节总数(根据文档)。有没有办法获得完整的响应大小。
谢谢
解决方法
您可以使用EventLoadingFinished
。
Network.loadingFinished#。
在HTTP请求加载完成时触发。 为here
EventLoadingFinished.EncodedDataLength
将为您提供完整的尺寸,因为仅在加载整个响应后才会触发此事件。您可以同时使用两个事件,并使用RequestID
字段将它们映射到特定的资源URL。