gpt4 book ai didi

rest - HTTP-Get 和 HTTP-POST 之间有什么区别以及为什么 HTTP-POST 在安全性方面较弱

转载 作者:行者123 更新时间:2023-12-03 06:00:42 28 4
gpt4 key购买 nike

谁能解释一下 HTTP-GET 和 HTTP-POST 之间的区别吗?为什么人们说 HTTP-POST 安全性较弱?

最佳答案

在 HTTP GET 请求中,键/值对在 URL 中指定:

<a href="http://server/something?value1=foo&value2=bar" rel="noreferrer noopener nofollow">http://server/something?value1=foo&value2=bar</a> .

在 HTTP POST 请求中,键/值对作为 HTTP 请求的一部分在 header 之后发送。例如:

 POST /something HTTP/1.1 Host: server Content-Length: 21 Content-Type: application/x-www-form-urlencoded value1=foo&value2=bar

很难真正描述一个比另一个更安全或更不安全,但是 HTTP POST 数据在 URL 中不可见,并且当向网站提交数据时,HTTP POST 通常只能作为以下结果执行:用户交互(例如单击“提交”按钮)。

这意味着用户不会被欺骗访问类似 <a href="http://server/update_profile?name=I_suck" rel="noreferrer noopener nofollow">http://server/update_profile?name=I_suck</a> 的 URL。并且敏感数据不会在 URL 中公开。

您还可以使用nonces以及其他带有 html 表单(使用 POST)的防伪造 token ,以防止其他形式的跨站点请求伪造。

一般来说,POST 应该用于可能修改服务器状态的请求,而 GET 应该用于只读操作。

关于rest - HTTP-Get 和 HTTP-POST 之间有什么区别以及为什么 HTTP-POST 在安全性方面较弱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2080863/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com