计算机网络知识点

get/post 区别

目前只需要了解浅层含义,够用就行。

Get和post是表单提交数据的两种基本方式,get请求数据通过域名后缀url传送,用户可见,不安全,post请求数据通过在请求报文正文里传输,相对比较安全。
post会有浏览器提示重新提交表单的问题,get则没有(加分的回答)

get/post请求格式只是一种默认的行为规范。由早期互联网发展造成的一种通用性规则遵守,现在浏览器都在客户端层面上做了限制(比如post重复提交,客户端一定会提示是否要继续,重复提交可能不起作用。但是服务端可能针对post实现了重复提交的优化,不会产生问题)在http协议上并未规定get传输数据一定放在url后面,它也可以像post请求一样,把数据放在数据体/正文段中。同理,post请求也可以在url后面传输数据,只要服务端实现了这种读取方式就可。

GET和POST的区别

  1. GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的Body中.
  2. GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制.
  3. GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值。
  4. GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码.
    GET是从服务器上获取数据,POST是向服务器传送数据。
    GET是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。POST是通过HTTP POST机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
    对于GET方式,服务器端用Request.QueryString获取变量的值,对于POST方式,服务器端用Request.Form获取提交的数据
    GET传送的数据量较小,不能大于2KB(这主要是因为受URL长度限制)。POST传送的数据量较大,一般被默认为不受限制。但理论上,限制取决于服务器的处理能力。
    GET安全性较低,POST安全性较高。因为GET在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。POST的所有操作对用户来说都是不可见的。
    ————————————————

原文链接:https://blog.csdn.net/qq_44204058/article/details/113984363

posted @ 2022-08-28 10:56  乌拉2021  阅读(34)  评论(0编辑  收藏  举报