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要高的。
HTTP请求方式之POST和GET的区别的更多相关文章
- HTTP请求方式中get和post的区别
表单提交中get和post方式的区别有5点 1.get是从服务器上获取数据,post是向服务器传送数据. 2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一 ...
- 限制action所接受的请求方式或请求参数
原文:http://www.cnblogs.com/liukemng/p/3726897.html 2.限制action所接受的请求方式(get或post): 之前我们在HelloWorldContr ...
- Android——JDK的get请求方式
layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...
- 第二节(RequestMapping请求方式)学习尚硅谷-springmvc视频教程
项目中,创建测试类SpringMVCTest @Controller @RequestMapping("/springmvc1") public class SpringMVCTe ...
- jQuery中ajax的4种常用请求方式
jQuery中ajax的4种常用请求方式: 1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数 ...
- js中同步与异步请求方式
异步请求方式: $.ajax({ url : 'your url', data:{name:value}, cache : false, async : true, type : "POST ...
- WEB API 中HTTP的get、post、put,delete 请求方式
一.WEB API 中HTTP 请求方式的四个主要方法 (GET, PUT, POST, DELETE), 按照下列方式映射为 CURD 操作: 1.POST 用于新建资源,服务端在指定的URI 上创 ...
- Ajax中的get和post两种请求方式的异同
Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别. 1. get是把参数数据队列加到提交表单的A ...
- HTTP 请求方式: GET和POST的比较(转)
GET和POST是HTTP的两个常用方法. 什么是HTTP? 超文本传输协议(HyperText Transfer Protocol -- HTTP)是一个设计来使客户端和服务器顺利进行通讯的协议 ...
随机推荐
- java延时队列
应用场景 1)7天自动收货 a.用户支付完成以后,把订单ID插入到内存的一个DelayQueue中,同时插入到Redis中. b.7天之内,用户点击了确认收货,则从DelayQueue中删除,从Red ...
- mysql在docker下运行,出现中文乱码
- python 解决cv2绘制中文乱码
因为使用cv2.putText() 只能显示英文字符,中文会出现乱码问题, 因此使用PIL在图片上绘制添加中文,可以指定字体文件. 大体思路: OpenCV图片格式转换成PIL的图片格式: 使用PIL ...
- laravel5.8 eloquent
https://learnku.com/docs/laravel/5.8/eloquent/3931 示例1: $flights = App\Flight::all(); foreach ($flig ...
- 2019.10.17 CCSP自闭打铜
很幸运被珠姐第二次抓过来参加CCSP(第二次看xmk夺冠),不过今年的题目还是那么让人心肌梗塞呢(听题解的时候基本都能听懂也算是进步了8). 比赛前一天晚上躺在宾馆里,做梦梦见自己在打比赛,局面应该是 ...
- jenkins 构建时显示git分支插件、显示构建分支插件
参数化构建分支 1.安装插件:Git Parameter 2.找到我们在Jenkins中建立的工程,勾选“参数化构建过程”,并如下配置 3.在“源码管理”中如下配置 Jenkins构建完显示构建用户和 ...
- 清北学堂北京大学吴耀轩神仙讲课day5摘要
今天讲图论 图是啥?(白纸上的符号?) 对于一个拥有n个顶点的无向连通图,它的边数一定多于n-1条.若从中选择n-1条边,使得无向图仍然连通,则由n个顶点及这 n-1条边(弧)组成的图被称为原无向图的 ...
- SQL查询操作
有7个筛选条件任意一个条件都可以筛选.采用LINQ查询比较繁琐,且操作步骤增加,选择用SQL判断. public DataTable GetData(string cboCld, string cbo ...
- 随机发送n位数字+字母的验证码
''' 随机发送n位数字+字母的验证码 ''' import random def get_verified(length): code = '' for i in range(length): nu ...
- Python-Django的windows环境
下载安装python2.7 : 最好是安装win32的,64bit的很多的lib都不支持.python-2.7.3 http://python.org/getit/releases/2.7.3/ 下载 ...