我正在使用gopacket包,每次我有一个TCP数据包时,我想检查有效负载是否包含HTTP请求。有没有一种简单的方法可以代替我自己编写解析器?还有一个返回funcReadRequest(b*bufio.Reader)的函数(参见:Request)结构,但我不知道应该使用哪种输入。tcp.Payload是byte[]数组,里面好像有我需要解析的信息(看下面的例子)://GettheTCPlayerfromthispacketiftcpLayer:=packet.Layer(layers.LayerTypeTCP);tcpLayer!=nil{fmt.Printf("TCP")//Geta
我正在使用gopacket包,每次我有一个TCP数据包时,我想检查有效负载是否包含HTTP请求。有没有一种简单的方法可以代替我自己编写解析器?还有一个返回funcReadRequest(b*bufio.Reader)的函数(参见:Request)结构,但我不知道应该使用哪种输入。tcp.Payload是byte[]数组,里面好像有我需要解析的信息(看下面的例子)://GettheTCPlayerfromthispacketiftcpLayer:=packet.Layer(layers.LayerTypeTCP);tcpLayer!=nil{fmt.Printf("TCP")//Geta
我正在使用pcap.net从pcap文件中读取数据包,并在匿名化(更改一些字段)后将它们保存到新的pcap文件中。我有个问题。一些pcap文件有不正确或不完整的数据包,例如它们没有tcp层或有效负载。我想知道如何检查tcplayer是否存在?这是我的代码的一部分:**TcpLayertcpLayer=(TcpLayer)packet.Ethernet.IpV4.Tcp.ExtractLayer();UdpLayerudpLayer=(UdpLayer)packet.Ethernet.IpV4.Udp.ExtractLayer();**没有tcp或udp层的pcap文件在这些行中有错误。