request对象

        request对象是网页服务器端的程序中,用来获取客户端表单字段内容数据的主要核心对象。它是实现javax.servlet套件下的HttpServletRequest接口而来,而此接口又是延伸自ServletRequest,所以request对象可以使用这两个接口中的方法。

分类方法说明
获取用户参数GetParameter(strName)返回指定变量名的数据
获取用户参数GetParameterValues(strName)返回所有变量名的枚举,此枚举中的内容为各个发送的变量名
获取用户参数GetParameterNames()返回指定名称的数组,若用户所输入的数据为复数,并且变量名相同,则使用此方法来取得复数的数组数据
获取系统信息getProtocol()返回通讯协议的方式
获取系统信息getRemoteAddr()返回客户端用户的IP地址
获取系统信息getRemoteHost()返回客户端用户的主机名
获取系统信息getScheme()返回当前页面使用的协议,http 或是 https
获取系统信息getServerName()返回服务器主机的名称
获取系统信息getServerPort()返回服务器主机的端口号,如8080
获取系统信息getRealPath(“url”)返回目前虚拟路径的真实路径
获取系统信息getMethod()返回发送数据的方式,如GET,POST
获取系统信息getQueryString()返回附在地址栏后的字符串数据
获取系统信息getRequestURI()返回请求的URI字符串,不包含地址栏后的查询字符串,如"http://myCom/jsp?data=helloWorld"会返回”/myCom/jsp"
获取系统信息getServletPath()返回程序的相对路径与文件名
获取头信息getHeader(String name)返回名称为name的请求头内容
获取头信息getHeaderNames()返回所有请求头名称的枚举
设置中文编码

setCharacterEncoding(),此方法接收一个代表编码格式的标识符串,简体中文的编码为GB2312

<%request.setCharacterEncoding("GB2312");%>
Post和Get的差异

        这两种设置的方式的主要差异在于数据的发送方式,前者将所要发送的数据包含在HTTP文件头,后者是将数据直接串接在地址栏的后端,两者都可以使用GetParameter取得发送的数据内容。
另外一个区别就是GET方式不能传送大量的数据,而POST恰好相反,适合传送大量数据。所以对速度要求较高时尽量考虑GET,当然这也并非绝对,根据具体需要合理选择。
method="get"的文件头
在这里插入图片描述
method="post"的文件头
在这里插入图片描述
所以当网页所要发送的是机密的数据时,选择get会将数据暴露,造成数据外泄。

getParameterValues方法

        getParameterValues()是用来取得数组数据的方法。当勾选多个复选框或者多选下拉式列表中的数据时,在程序中可由此取得被选择的数据项。

String select[] = request.getParameterValues("名字,即name的值")
取得请求头信息

        getHeaderNames方法取得所有请求头的名称,getHeader方法可取得特点名称的请求头信息。


<%
	//示例用法
	Enumeration headers = request.getHeaderNames();
	while(headers.hasMoreElements()){
		String name = (String)headers.nextElement();
		String content = request.getHeader(name);
		out.print(name+"-->"+content+"<br>");
	}
%>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃鱼的ねこ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值