2015-11-03 47 views
1

我使用python requests模块,我把我的PARAMS像在此之前:请求中的数据和参数有什么区别?

requests.post(url=url, params=params) 

但今天,我发现我把我的数据是这样,它失败了,我改成这样:

requests.post(url=url, data=params) 

那就没问题,dataparams有什么区别?

我观察到请求得到一个标头X-Requested-With:XMLHttpRequest,是因为这个原因吗?

+0

你确定你没有得到而不是发布吗? –

+0

以参数形式发送时出现了什么错误? –

回答

0

PARAMS而数据在request body发送在(附加在)的URI(http://www.answer.com/here?param1=1&param2=2)被发送。通常情况下,敏感数据或以大量发送的数据会发布到正文中,因为它更容易到达secure,并且不会导致巨大的URI。

+0

为什么更安全? –

+0

由于URI是以纯文本形式发送的,并且通常存储在服务器日志中,所以如果您发送的是类似安全令牌/用户名/密码的东西,则任何人都可以看到(并使用它)。 –

+0

数据仍可能被嗅探。你可以使用'https://'来保护。编辑:**不,你不能** –

相关问题