我看到在GET
和POST
请求中都进行了基本身份验证。
一方面,我认为浏览器缓存GET
请求可能是一个问题,但另一方面:POST
更大,但鼓励传递敏感信息。
我不是在问GET
请求和POST
请求之间的区别,而是应该使用哪一个来进行基本身份验证。GET
应该只与HTTPS一起使用吗?应该总是使用POST
吗?
我的问题是应该用哪一种?哪个是更好的练习?
发布于 2019-04-02 01:36:31
GET
应该只与HTTPS一起使用吗?应该总是使用POST
吗?
在通过线路发送/请求敏感信息时,无论HTTP方法如何,都必须使用HTTPS。HTTPS确保对主体和头进行加密。
请记住,敏感信息(如密码和支付卡号)绝不能在URL中发送:所请求的URL可能由服务器和代理记录;如果浏览器请求URL,则URL将转到浏览器历史记录。然后你就有了安全漏洞。
哪一个应该用于基本身份验证?
基础知识身份验证方案不绑定到任何特定的HTTP方法。每个HTTP方法都有自己的语义,因此您可能需要不同的方法来设计您的API。这些方法中的每一种都可以执行需要身份验证和/或授权的操作。
RFC 7235中描述的HTTP身份验证框架定义了应该在Authorization
头中发送凭据,以便它们可以应用于任何HTTP(S)请求。
同样重要的是要强调身份验证方案(如Basic )将应用于保护空间,通常称为领域(详见我的先前的回答 )。
发布于 2019-04-02 01:19:57
HTTP协议中采用GET和POST两种方法实现数据从客户端到服务器的传输,但POST和GET方法的主要区别是在URL字符串中附加GET携带请求参数,而POST在消息体中携带请求参数,使得http协议中数据从客户端到服务器的传输更加安全。所以这取决于你的需要。希望能帮上忙!
https://stackoverflow.com/questions/55470970
复制相似问题