我将要使用 Python.requests 从我自己的在线 api 获取数据到我的本地电脑。我的 api 需要身份验证,目前只需发布用户/密码即可完成身份验证:
params = {'user': 'username', 'pass':'password'}
requests.post(url, params=params)
这个请求是安全的还是会允许中间人捕获该用户/密码?
P.S 我的 api 使用的是 letsencrypt ssl 证书。 Python 版本 3.7.0
请您参考如下方法:
这与 python-requests 包无关,但与 HTTP(和 HTTPS)协议(protocol)有关。 HTTP 是纯文本,因此任何设法嗅探您的数据包的人都可以读取内容(因此用户名/密码对是明文形式)。 HTTPS 使用强加密,因此即使有人嗅探您的流量也很难破译它 - 当然没有任何加密方案是 100% 安全的,但即使对于 NSA 来说,解密 SSL 流量目前的成本也太高了。
IOW,使您的请求“安全”的是使用 HTTPS 协议(protocol),而不是您使用哪个 python(或不是 python)包来编写客户端代码。
