HTTP的请求方式GET和POST有什么区别

这篇文章主要介绍“HTTP的请求方式GET和POST有什么区别”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“HTTP的请求方式GET和POST有什么区别”文章能帮助大家解决问题。

HTTP的两种常用请求方式GET和POST

HTTP:HTTP协议(HyperText Transfer),用于从万维网(WWWW:World Wide Web)服务器传输超文本到本地浏览器的传输协议。HTTP是一个基于 TCP/IP 通信协议来传递数据(HTML文件,图片文件,查询结果等)。

一、GET方法

使用 GET 方法时,查询字符串(名称或键值对)是在 GET 请求的 URL 中发送的:

/test/demo_form.php?name1=value1&name2=value2说明POST 请求不会被缓存POST 请求不会保留在浏览器历史记录中POST请求的URL不能被收藏为书签POST 请求没有长度要求HTTP的方法中POST向后台传输数据比较可靠,POST 方法打包信息的方式与 GET 方法基本相同,但是 POST 方法不是把信息作为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息作为一个单独的消息进行发送。Servlet 使用 doPost() 方法处理这种类型的请求。三、GET方法与POST方法的区别在浏览器进行回退操作时,GET请求是无害的,而POST请求则会重新请求一次GET请求参数是连接在URL后面的,而POST请求参数是存放在消息主体(Requestbody)内GET请求因为浏览器对url长度有限制(不同浏览器长度限制不一样)对传参数量有限制,而post请求因为参数存放Requestbody内所以参数数量没有限制因为GET请求参数暴露在URL上,所以安全方面POST比GET更加安全GET请求浏览器会主动缓存(Cache),POST并不会,除非主动设置GET请求参数会保存在浏览器历史记录内,POST请求并不会GET请求只能进行URL编码,而POST请求可以支持多种编码方式GET请求产生1个Tcp数据包,POST请求产生2个Tcp数据包浏览器在发送GET请求时会将请求头(Header)和数据(Data)一起发送给服务器,服务器返回200状态码,而在发送POST请求时,会先将Header发送给服务器,服务器返回100,之后再将Data发送给服务器,服务器返回200
说明:
  • GET 请求可被缓存

  • GET 请求保留在浏览器历史记录中

  • GET 请求的URL可被收藏为书签

  • GET 请求不应在处理敏感数据时使用

  • GET 请求有长度限制

  • GET 请求只应当用于获取数据

GET 方法是默认的从浏览器向 Web 服务器传递信息的请求方法,它会产生一个很长的字符串,出现在浏览器的地址栏中。GET 方法有大小限制:请求字符串中最多只能有 1024 个字符。Servlet 

二、POST方法

使用POST方法时,查询字符串(名称或键值对)是在POST请求的HTTP消息主体重发送的:使用 doGet()方法处理这种类型的请求。

POST /test/demo_form.php HTTP/1.1
Host: runoob.com
name1=value1&name2=value2
说明
  • POST 请求不会被缓存

  • POST 请求不会保留在浏览器历史记录中

  • POST请求的URL不能被收藏为书签

  • POST 请求没有长度要求

HTTP的方法中POST向后台传输数据比较可靠,POST 方法打包信息的方式与 GET 方法基本相同,但是 POST 方法不是把信息作为 URL 中 ? 字符后的文本字符串进行发送,而是把这些信息作为一个单独的消息进行发送。Servlet 使用 doPost() 方法处理这种类型的请求。

三、GET方法与POST方法的区别

  • 在浏览器进行回退操作时,GET 请求是无害的,而 POST 请求则会重新请求一次

  • GET 请求参数是连接在 URL 后面的,而POST请求参数是存放在消息主体(Requestbody)内

  • GET 请求因为浏览器对 url 长度有限制(不同浏览器长度限制不一样)对传参数量有限制,而 post 请求因为参数存放 Requestbody 内所以参数数量没有限制 

  • 因为 GET 请求参数暴露在URL上,所以安全方面 POST 比 GET 更加安全

  • GET 请求浏览器会主动缓存(Cache),POST 并不会,除非主动设置

  • GET 请求参数会保存在浏览器历史记录内,POST 请求并不会

  • GET 请求只能进行 URL 编码,而 POST 请求可以支持多种编码方式

  • GET 请求产生1个 Tcp 数据包,POST 请求产生2个 Tcp 数据包

  • 浏览器在发送 GET 请求时会将请求头(Header)和数据(Data)一起发送给服务器,服务器返回200状态码,而在发送 POST 请求时,会先将 Header 发送给服务器,服务器返回100,之后再将 Data 发送给服务器,服务器返回200

关于“HTTP的请求方式GET和POST有什么区别”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注蜗牛博客行业资讯频道,小编每天都会为大家更新不同的知识点。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接