繁体   English   中英

"请求中的数据和参数有什么区别?"

[英]what is the difference between data and params in requests?

我正在使用python requests模块,我之前发送我的参数是这样的:

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

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

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

那么没关系, dataparams有什么区别?

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

根据请求文档<\/a>:

首先,有两种不同的方法<\/strong>:

  • requests.post()<\/code>发出 POST 请求(将所有参数放在正文中)<\/li>
  • requests.get()<\/code>发出 GET 请求(将所有参数放在 URL 中)<\/li><\/ul>

    然后, 根据文档<\/a>,您可以在两个参数<\/strong>之间进行选择以发送所有键\/值数据:

      params=<\/code> ,没有字符串修改。<\/li>
    • data=<\/code> ,对参数应用表单编码字符串修改。<\/li><\/ul>

      因此,您有 4 个选择来发送请求:

      • 我不认为当前接受的答案是正确的。 他实际上是在谈论requests.post()<\/code>但在他自己的示例中使用requests.get()<\/code> 。

        "

参数在(附加到)URI ( http://www.answer.com/here?param1=1&param2=2 ) 中发送,而数据在请求正文中发送。 通常敏感数据或大量发送的数据会发布在正文中,因为它更容易保护并且不会导致巨大的 URI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM