Servlet中get和post方法区别
get和post这是http协议的两种方法,另外还有head, delete等。今天只学习get、post
① Get方法传输数据是大小个数有限制的字符串,可以看得到的。数据放在url后面,使用?key1=value1&key2=value2….
Post方法传输数据封装成对象了,可以传二进制数据、文件等大文件。不通过url不可见。
② 所以get传值不安全,post很安全了。
③ 使用get,form中的数据将编码到URL中,而使用POST的form中的数据则在http协议的header中传输。
④ 当且仅当请求幂等(即请求任意次返回同意结果,本质是指请求本身不会改变服务器的数据和状态)时使用GET。当请求会改变服务器数据或状态(增删改服务器数据),应当使用POST
⑤ 重复访问使用get方法请求的页面,浏览器会使用缓存处理后续的请求。使用POST方法的form提交时,浏览器基于POST将产生永久改变的假设,让用户进行提交请求。所以搭配好get和post,浏览器会给出很好的缓存配合,响应速度更快。
知识贵在积累,满满总结。