zoukankan      html  css  js  c++  java
  • GET方法和POST方法


    HTTP协议中有很多请求方法,其中最为常见的是GET方法和POST方法。

    GET方法

    GET是HTTP的默认请求方法。通常用于请求服务器发送某个资源。

    • 没有请求体
    • 数据必须在1K之内
    • GET请求数据会暴露在浏览器的地址栏中

    GET请求常用的操作:

    1. 在浏览器的地址栏中直接给出URL,那么就一定是GET请求。
    2. 点击页面上的超链接也一定是GET请求
    3. 提交表单时,表单默认使用GET请求,但可以设置为POST

    客户端用GET方法发起一次HTTP请求的过程如下图所示:

    POST方法

    POST方法起初是用来向服务器输入数据的(POST用于向服务器发送数据,PUT用于向服务器上的文件等资源中存储数据)。实际上,通常会用它来支持HTML的表单。表单中填好的数据通常会被送给服务器,然后由服务器将其发送到它要去的地方(比如,送到一个服务器网关程序中,然后由这个程序对其进行处理)。

    1. 数据不会出现在地址栏中
    2. 数据的大小没有上限
    3. 有请求体
    4. 请求体中如果存在中文,会使用URL编码

    客户端用POST方法发起HTTP请求(向服务器发送表单数据)的过程如下图所示:

    两种方法的比较

    GET是从服务器上获取数据,POST是向服务器传送数据

    GET没有请求体,而POST有请求体。因为GET方法中,请求参数不会放在URL下面,而是放在URL后面了。

    GET请求参数都显示在浏览器网址上,HTTP服务器根据该请求所包含URL中的参数来产生响应内容,即“Get”请求的参数是URL的一部分。 例如: http://www.baidu.com/s?wd=Chinese

    POST请求参数在请求体当中,消息长度没有限制而且以隐式的方式进行发送,通常用来向HTTP服务器提交量比较大的数据(比如请求中包含许多参数或者文件上传操作等),请求的参数包含在“Content-Type”消息头里,指明该消息体的媒体类型和编码。

    注意:避免使用Get方式提交表单,因为有可能会导致安全问题。 比如说在登陆表单中用Get方式,用户输入的用户名和密码将在地址栏中暴露无遗。

  • 相关阅读:
    建造者模式5(7)
    抽象工厂模式4(6)
    工厂方法模式3(5)
    jxl导出excel(2)
    jxl导入excel(1)
    java8新特性字符串转LocalDateTime转Date(6)
    极光推送java服务端-通知(2)
    极光推送java服务端-通知(1)
    SpringCloud微服务之Ribbon负载均衡(一)
    cenos7搭建gitlab
  • 原文地址:https://www.cnblogs.com/cyx-b/p/14961684.html
Copyright © 2011-2022 走看看