什么时候用get请求,什么时候用post请求?
get:a,浏览器的提交方式 b,超链接 c,表单提交的默认方式 post:a,表单提交的时候修改提交方式为post
1 get和post请求的区别:
1.从安全的角度来说,post要比get相对安全,但不是绝对安全 get会将请求参数值直接写在资源路径后面,而post则是将请求参数 放在请求数据包的实体内容里面
2.从提交数据的大小来看,post提交的数据要大于get,因为get提交的数据类型 只能是字符串类型,不能是图片,视屏等等大容量数据,它的提交数据大小不能超过 4kb,但post没有此限制,可以提交大量的数据。
3.从处理数据的效率来说。get处理请求的效率要高于post请求 解决浏览器绘画服务器出现的中文乱码问题:
为什么会出现乱码?
因为编码和解码的字符集编码不一致 ;
如何解决:
要看提交方式为get还是post post: request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); get: name=new String(name.getBytes("iso8859-1"),"utf-8");
4.重定向: 浏览器绘画服务器时,服务器响应时返回一个302状态码,以及一个 Location消息头(要求浏览器重新发送一个新的地址重定向地址) 浏览器接收到之后,会立马按location消息头要求的地址重新发送 新的地址
5如何重定向? 通过HttpSerletResponse对象来进行重定向; 语法:rsponse.sendRedirect(重定向url);重定向的特点: 1.重定向的地址可以是任意地址 2.重定向之后,地址栏的地址会发生改变 3.重定向过程中涉及到的Web组件并不会共享同一个request和response对象