请问常见的HTTP POST数据压缩与加密方式有哪些?

203 views
Skip to first unread message

kingname

unread,
Oct 24, 2017, 2:16:52 AM10/24/17
to python-cn(华蟒用户组,CPyUG 邮件列表)
我使用Charles获取了一个APP向后台发送的POST请求的数据包。其中Headers为


```
POST /v1/user/message/history?fr=544504935 HTTP/1.1 
X-LV: 1 
X-KV: cf6ccedf 
X-SIGN: J8bMq6EIw7hTZzaekDiIE40Jy+s= 
Connection: Keep-Alive 
Charset: UTF-8 
Expect: 100-continue 
cookie: SESSIONID=30BB3E48-C110-CF95-BBF7-C5B948672125 
Accept-Language: zh-CN 
User-Agent: xxx/8.2.1 Android/1510 (Redmi 4X; Android 7.1.2; Gapps 1; zh_CN; 23; Xiaomi) 
Content-Type: application/x-www-form-urlencoded 
Content-Length: 109 
Host: api.xxx.com 
Accept-Encoding: gzip 

```

Body 为:

```

mzip=AgOrTaf%2BAI1OoQiapEonDg4iF8yxaY2CcUN0xL7cIEV8bP4I%2BrNDSY3AbRR2Xj6EJyT0XGPd5xSkAiuwGvawny7%2BZVmhABw%3D 
```
我现在关心的是它的这个Body,如果把这个Body使用URL编码来解码,可以得到一个Base64的字符串。然后使用Base64解码可以得到一个二进制数据。

根据我以往的经验,一般HTTP POST如果要压缩加密的话,会先使用zip压缩,再把压缩后的二进制文件进行Base64编码。有的网站也会使用gzip压缩,然后把压缩后的二进制文件进行Base64编码。还有一些网站可能会生成SQLite数据库,再把数据库文件对应的二进制进行Base64编码。

但是我是用Python的zlib和gzip库都尝试过对产生的二进制数据进行解压,但是都无法成功。

请问各位,对于把上面body进行解码的方法,各位有什么建议吗?

MuSheng Chen

unread,
Oct 24, 2017, 3:52:56 AM10/24/17
to pyth...@googlegroups.com
感觉扒前端代码来得更快。

--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com
要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com
要查看更多选项,请访问https://groups.google.com/d/optout

Ken

unread,
Oct 26, 2017, 5:08:17 AM10/26/17
to pyth...@googlegroups.com
>> Content-Type: application/x-www-form-urlencoded
Header 里说得很明确,body 是 form-urlencoded 的。

--
Reply all
Reply to author
Forward
0 new messages