美文网首页
GET、POST区别/使用场景

GET、POST区别/使用场景

作者: Artifacts | 来源:发表于2019-10-13 22:42 被阅读0次

通常错误解释:

1、GET使用URL或Cookie传参。而POST将数据放在BODY中。
2、GET的URL会有长度上的限制,则POST的数据则可以非常大。
3、POST比GET安全,因为数据在地址栏上不可见。

  • 以下情况使用POST方法:

请求的结果有持续性的副作用,例如,数据库内添加新的数据行。
若使用GET方法,则表单上收集的数据可能让URL过长。
要传送的数据不是采用7位的ASCII编码。

  • 以下情况使用GET方法:

请求是为了查找资源,HTML表单数据仅用来帮助搜索。
请求结果无持续性的副作用。
收集的数据及HTML表单内的输入字段名称的总长不超过1024个字符。


GET和POST与数据如何传递没有关系

GET和POST是由HTTP协议定义的。在HTTP协议中,Method和Data(URL, Body, Header)是正交的两个概念,也就是说,使用哪个Method与应用层的数据如何传输是没有相互关系的。

HTTP没有要求,如果Method是POST数据就要放在BODY中。也没有要求,如果Method是GET,数据(参数)就一定要放在URL中而不能放在BODY中。

现代的Web Server都是支持GET中包含BODY这样的请求。虽然这种请求不可能从浏览器发出,但是现在的Web Server又不是只给浏览器用,已经完全地超出了HTML服务器的范畴了。

HTTP协议对GET和POST都没有对长度的限制

HTTP协议明确地指出了,HTTP头和Body都没有长度的要求。而对于URL长度上的限制,有两方面的原因造成:

1、浏览器。早期的浏览器会对URL长度做限制。据说IE对URL长度会限制在2048个字符内。

2、服务器。URL长了,对服务器处理也是一种负担。多数服务器出于安全啦、稳定方面的考虑,会给URL长度加限制。但是这个限制是针对所有HTTP请求的,与GET、POST没有关系。

安全不安全和GET、POST没有关系

服务器开放接口是基于REST理念设计的,使用的协议是HTTP,但是传输的内容不是HTML。这不是Web Server,而是一个Web Service。
只有一个根本区别,一个用于获取数据,一个用于修改数据。

相关文章

  • 前端回顾之FORM表单知识点

    1.post和get区别: 字面自已来看,post有传递的意思,get有得到意思,具体使用场景和区别有哪些呢? 关...

  • GET、POST区别/使用场景

    通常错误解释: 1、GET使用URL或Cookie传参。而POST将数据放在BODY中。2、GET的URL会有长度...

  • Flask学习(十) - web请求

    GET/POST 使用get/post方法需要事先在函数中引入request get: 使用场景:仅用于向服务器获...

  • 2018-05-13

    Get 与Post 请求的区别分析‘ 在Form里面,可以使用post也可以使用get。它们都是method的合法...

  • Volley

    Android Volley使用 Get和Post区别 GET用来从服务端获取数据,POST用于上传或者修改数据 ...

  • HTML(7)

    语义化、行内元素块级元素、POST 和 GET 的区别 Version two 熟悉列表的使用场景和用法 理解HT...

  • Android面试一问一答:GET、POST

    GET、POST有什么区别? POST和GET本质上没有区别。一个用与传递数据,另一个用于修改数据。 GET使用U...

  • form基础表单

    课程目标 熟悉常见input表单的使用方式 掌握 POST 与 GET 方式的区别 学习建议 POST 和 GET...

  • 接口测试工具postman-post请求

    post与get使用区别在于body下各选项值

  • Tips 1: GET 和 POST 请求

    许多人对GET和POST请求的认知都停留在POST比GET更安全,通常都会优先使用POST其实特定的场景下,使用G...

网友评论

      本文标题:GET、POST区别/使用场景

      本文链接:https://www.haomeiwen.com/subject/slzkmctx.html