我正在研究一个开放源代码框架的源代码,在该代码中我多次看到一个变量“有效载荷”。任何想法“有效负载”代表什么?

#1 楼

术语“有效负载”用于区分大块数据或类似数据中的“有趣”信息,以及支持该信息的开销。它是从运输中借来的,指的是“支付”的部分负载:例如,一辆油轮可能载有20吨油,但满载的车辆的重量远不止这些-车辆本身,驱动程序,燃料,油箱等。移动所有这些都花钱,但是客户只关心(并支付)机油,因此是“有效负载”。该术语最常见的用法是在消息协议的上下文中,以区分协议开销与实际数据。例如,一个JSON Web服务响应可能看起来像这样(为便于阅读而格式化):

{
    "status":"OK",
    "data":
        {
            "message":"Hello, world!"
        }
}


在此示例中,字符串Hello, world!是有效负载,收件人感兴趣的部分;剩下的,尽管是至关重要的信息,却是协议的开销。恶意软件通常有两个目标:传播自身,以及在目标系统上执行某种修改(删除文件,损害系统安全性,调用宿主等)。扩展部分是开销,而执行实际操作的代码是有效负载。

评论


哇!非常感谢您的出色解释。 :)

– Vishwas
2012年7月30日在6:50

很好的解释... tks = D

– rizidoro
14年6月18日在13:22

你的解释很靶心。

– pushya
15年6月25日在15:44

很棒的解释-今天学到了一些新东西!

–罗兰·特普(Roland Tepp)
16年7月27日在17:56

声明名为字符串jsonPayLoad =“”的变量不好吗?而不是字符串json =“”;在WebHook中,哪个接收到Json格式的数据?

– Shaiju T
17-2-23在7:50



#2 楼

到目前为止,我已经满足了Payload的两个含义:

1)在数据包或其他传输单元中承载的基本数据。有效负载不包括将数据包到达其目的地所需的“开销”数据。注意,构成有效载荷的因素可能取决于视点。对于需要一些开销数据来完成其工作的通信层,有时将有效负载视为包括该层处理的一部分开销数据。但是,在更一般的用法中,有效负载是指在目的地传递给最终用户的位。

2)已传递到用户计算机的软件病毒的最终后果。 br />

评论


Sry!..但是,您所说的“开销”数据到底是什么意思?顺便说一句,我主要看到的是在事件分派中正在使用“有效负载”,它的流程也很流畅。

– Vishwas
2012年7月28日19:00



框架/开销将是包裹在有效负载周围的东西,以使其到达需要的位置,并标记为需要标识的内容。您可以将其与Web请求进行对比,这会产生一堆标题,这些标题标识有关实际页面的内容,例如编码,大小,格式等。有效负载是实际页面,位于标题之后,使接收者可以理解它。

–拉克斯·维克伦德
2012年7月28日在19:12