http 请求中的 payload
概念:
payload,翻译过来是有效载荷
复制代码
复制代码
这里的 data 就是 payload,也就是关键信息。而 status、hasError等信息是load,虽然也是信息,但相对没有那么重要。surprise! 500G 网络安全学习资料,👉戳此免费获取
安全方面:
复制代码
应用:
后台要想从 Request Payload 中得到自己想要的数据,就要从流中来获取数据,具体的代码为
复制代码
本文字数:906 字
阅读完需:约 3 分钟
payload,翻译过来是有效载荷
**payload 字面意思“有效载荷,有效负荷,有效载重”。**要解释什么是有效载重,用货运行业打个比方:比如有一位客户需要支付一笔费用委托货车司机运送一车石油,石油本身的重量、车子的重量、司机的重量等等,这些都属于载重(load)。 但是对于该客户来说,他关心的只有石油的重量,所以石油的重量是有效载重(payload,也就是付费的重量)。所以抽象一下,payload 可以理解为一系列信息中最为关键的信息。对于程序员来说就是在程序中 起关键作用的代码。回到代码中,举一个最简单的例子,一个 ajax 请求返回一个 JSON 格式
{ status: 200, hasError: false, data: { userId: 1, name: 'undefined' }}
这里的 data 就是 payload,也就是关键信息。而 status、hasError等信息是load,虽然也是信息,但相对没有那么重要。surprise! 500G 网络安全学习资料,👉戳此免费获取
通常在传输数据时,为了使数据传输更可靠,要把原始数据分批传输,并且在每一批数据的头和尾都加上一定的辅助信息,比如数据量的大小、校验位等,这样就相当于给已经分批的原始数据加一些外套,这些外套起标示作用,使得原始数据不易丢失,一批数据加上“外套”就形成了传输通道的基本传输单元,叫做数据帧或数据包,而其中的原始数据就是payload
后台要想从 Request Payload 中得到自己想要的数据,就要从流中来获取数据,具体的代码为
private String getStringFromStream(HttpServletRequest req) { ServletInputStream is; try { is = req.getInputStream(); int nRead = 1; int nTotalRead = 0; byte\[\] bytes = new byte\[10240\]; while (nRead > 0) { nRead = is.read(bytes, nTotalRead, bytes.length - nTotalRead); if (nRead > 0) nTotalRead = nTotalRead + nRead; } String str = new String(bytes, 0, nTotalRead, "utf-8"); return str; } catch (IOException e) { e.printStackTrace(); return ""; } }左手Java右手Python,中间纹个C++ 2021.06.26 加入
还未添加个人简介

促进软件开发及相关领域知识与创新的传播
ArchSummit全球架构师峰会 3月24-25日
PCon全球产品创新大会 3月25-26日
DIVE全球基础软件创新大会 3月25-26日
ArchSummit全球架构师峰会 4月24-25日
QCon全球软件开发大会 5月12-14日
GMTC全球大前端技术大会 6月10-11日
ArchSummit全球架构师峰会 7月15-16日
PCon全球产品创新大会 8月19-20日
京公网安备 11010502039052号


评论