PCAP文件:一个pcap文件由文件头(pacp header)和 多个 (packet header && packet data) 组成,其中 (packet header && packet data) 的数量 就是pcap文件中包含的packet数量。
本列子是通过https接口请求api获取二进制数据流 接口响应数据如下
具体实现代码DEMO如下:
// DownloadDataPackets 下载数据包
func DownloadDataPackets(ctx context.Context, baseURI, user, pass, filter, beginTime, endTime, certPath string) (filaname string, err error) {
var params = map[string]interface{
}{
//请求接口需要的数据
}
// 请求接口判断是否有数据,如果有数据再进行后面数据下载请求
var respData []byte
req_times := 0
for {
req_times += 1
respData, err = DownloadDataPacketsRal(baseURI, params)
if err != nil {
return "", err
}
if dataPacketsIsExist(respData) {
break
}
time.Sleep(time.Duration(1) * time.Second)
if req_times > 60 {
return "", nil
}
}
fileName := "./packets.pcap"
// 创建文件
file, err := os.Create