浏览器分别在哪些情况下使用get方式和post方式访问web服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浏览器分别在哪些情况下使用get方式和post方式访问web服务器相关的知识,希望对你有一定的参考价值。
get请求方式:直接在浏览器地址输入的访问地址,或提交表单时,该表单对应的form元素没有设置method方式或者method方式为get,get方式的请求会将请求参数的名和值转换成字符串,并附加在原rul之后,因此,可以在地址栏中看到请求参数名和值。且get请求方式传送的数据量小,一般不能大于2kb
post请求方式:
通过表单提交,且需要设置form的元素为post。post方式传送的数据量较大,取决于服务器的设置,post方式发送的请求参数以及对应的值放在html header中传输,用户不能在地址栏里看到请求参数之,安全性相对较高。
对比以上两种参数传递方式,我们应该采用post方式。
post请求方式处理非西欧字符:
必须在获取请求参数之前先调用setCharacterEncoding方法设置编码的字符集,因此当发送请求的表单页采用gb2312字符集
Jsp代码
<%@ page language="java" contentType="text/html;charset="gb2312"%>
<html>
request.setCharacterEncoding("gb2312");
String name = request.getParameter("name");
String [] colors = request.getParamterValues("color");
<!--下面依次输出表单域的值-->
您的名字:<%=name%>
您喜欢的颜色<%for(String c:colors)out.println(c+"");%>
</html>
get请求方式处理非西欧字符:
在获取请求参数值之后对请求参数值重新编码,也就是将其转换成字节数组,再将字节数组重新编码成字符串
Jsp代码
<%@ page language="java" contentType="text/html;charset="gb2312"%>
<html>
String rawName = request.getParametet("name");
bytes[] rawBytes = rawName.getBytes("ISO-8859-1");
String name = new String(rawBytes,"gb2312");
</html> 参考技术A 实现不了!手机根本就打不开生成的网页!亲自试了!肯能还需要什么硬件支持吧!
以上是关于浏览器分别在哪些情况下使用get方式和post方式访问web服务器的主要内容,如果未能解决你的问题,请参考以下文章