HTTP请求方式之POST和GET的区别

GET请求方式:

  如果我们的网页收集到的用户数据,他规定了,此网页用户数据用GET的请求方式去处理的话,我们会发现,比如百度,就是一个很经典的GET请求方式

  当我们在百度搜索上输入一个‘java’,点击百度一下,那个这个网页就收集到了我们要搜索的数据,并提交百度服务器处理完后,显示一些搜索的结果,那么这个就是很经典的GET请求

   

  请求数据用问号直接隔在了我的url后面,大家看那个“wd=java”,这就是我们写的那个“java”

如图,在请求主体里,是没有内容的,原因是,GET请求方式是把请求数据用‘?’的方式拼接在了请求头里面的请求地址里面了,而且在地址栏是可以看到的 

     

POST请求方式:

  请求数据是在请求实体里进行发送,在URL中看不到请求的数据。

  在POST请求中,是把你的请求数据放在了请求主体中,而不是url地址的后面。

优缺点:

  GET:

    1、直接拼在了url的后面,都能看见,所以不安全。

      比如你写了个登录功能,一点击登录,你的账号密码全拼在了url后面,因此,这是及不安全的。

    2、HTTP携带请求的数据是没有限制的,也就是说你想附带多少就附带多少,例如你上传文件,只是时间上传时间长短的问题。

       但是,浏览器的地址栏,因为GET要显示在那,浏览器的地址栏是有长度限制的。所以GET方式只能传入少量的。不是因为HTTP协议。

  POST:

    1、请求数据是在请求实体中进行发送的,在url中看不到具体的请求信息,安全。

    2、POST有单独的请求数据这一块的进行发送的,那么这一块就是一个单独的体系,所以POST是不限制大小的。

    

 总结:

    如果你的数据对安全性要求不高,并且数据量比较小,就可以有GET;相反,如果你的数据对安全性要求高,并且数据量比较大,就可以有POST

   但往往第一衡量维度是安全性,不是数据量,而是安全性,哪怕是牺牲效率,也要提高安全性。

      可能有人会说,那我直接用POST不就完事了吗?因为GET的效率比POST要高的。

猜你喜欢

转载自www.cnblogs.com/qzhc/p/11302195.html