form表单文件上传的三要素,get和post请求的区别

一,文件上传三要素:

1.表单提交方式:post (get方式提交有大小限制,post没有)

2.表单的enctype属性:必须设置为multipart/form-data.

根据HTTP协议的规定,浏览器每次向后台提交参数,都会对参数进行统一的编码,默认采用的编码格式是urlencoded,这种编码格式只能对文本数据进行编码,浏览器每次向后台提交参数,都会先把所有参数转化成字符串,然后对这些数据统一进行urlencode编码,

3.表单必须有文件上传项:file

二.为什么表单的enctype属性:必须设置为multipart/form-data.

form表单文件上传的三要素,get和post请求的区别_第1张图片

form表单文件上传的三要素,get和post请求的区别_第2张图片

form表单文件上传的三要素,get和post请求的区别_第3张图片

get请求与post请求的区别:

get:参数通过请求头提交到后台,参数放在URL后边,只能向后台提交文本数据,对参数的长度有限制,数据不安全,效率高(不需要对数据进行任何的转化和封装,数据直接放到url后面,get这种方式还能用缓冲:第一次访问过一个页面后会把,图片,js,css,等静态资源浏览器都会缓存到某个目录下)

post:参数通过请求体提交到后台,既能提交文件数据,又能提交二进制数据,理论上参数长度没有限制,相对安全,效率相对较低(放到请求体中,需要按照请求体的格式对数据进行任何的转化和封装(浏览器转化),不能使用缓存)

你可能感兴趣的:(SSM,mvc)