【ASP.NET】HTTP中的 get 和 post 请求

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Xumuyang_/article/details/85054078

在这里插入图片描述

  • GET和POST是什么?HTTP协议中的两种发送请求的方法。
  • HTTP是什么?HTTP是基于TCP/IP的关于数据如何在万维网中如何通信的协议。
  • HTTP的底层是TCP/IP。所以GET和POST的底层也是TCP/IP,也就是说,GET/POST都是TCP链接。GET和POST能做的事情是一样一样的。你要给GET加上request body,给POST带上url参数,技术上是完全行的通的。

说了这么多,他们的区别是什么呢?

在这里插入图片描述

通俗点讲,

  • 如果表单是以GET方式将数据发送到服务端,那么会将用户在表单中输入的数据放在浏览器的地址栏中发送到服务端。
    如果数据是以POST提交,那么表单中的数据全部都放在请求报文的请求体
  • get请求在url中传递的参数是有长度限制的,而post没有。

表单在提交时到底是用GET还是POST?

  • get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。
  • get请求只能进行url编码,而post支持多种编码方式
  • get请求会浏览器主动cache,而post支持多种编码方式。
  • get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留。
  • POST发送的数据要比GET大:GET产生一个TCP数据包;POST产生两个TCP数据包。

长的说:

对于GET方式的请求,浏览器会把 http header 和 data 一并发送出去,服务器响应200(返回数据);

而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。


如何修改请求方式?

1、在浏览器地址栏中直接输入地址,敲回车,是向服务器发送GET请求,单击超链接也是GET请求。
2、POST只有将表单中的method改成post这一种方式,如图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Xumuyang_/article/details/85054078
今日推荐