
答:setAttribute(Stringname,Object):设置名字为name的request的参数值
getAttribute(Stringname):返回由name指定的属性值
getAttributeNames():返回request对象所有属性的名字集合,结果是一个枚举的实例
getCookies():返回客户端的所有Cookie对象,结果是一个Cookie数组
getCharacterEncoding():返回请求中的字符编码方式
getContentLength():返回请求的Body的长度
getHeader(Stringname):获得>
getHeaders(Stringname):返回指定名字的requestHeader的所有值,结果是一个枚举的实例
getHeaderNames():返回所以requestHeader的名字,结果是一个枚举的实例
getInputStream():返回请求的输入流,用于获得请求中的数据
getMethod():获得客户端向服务器端传送数据的方法
getParameter(Stringname):获得客户端传送给服务器端的有name指定的参数值
getParameterNames():获得客户端传送给服务器端的所有参数的名字,结果是一个枚举的实例
getParameterValues(Stringname):获得有name指定的参数的所有值
getProtocol():获取客户端向服务器端传送数据所依据的协议名称
getQueryString():获得查询字符串
getRequestURI():获取发出请求字符串的客户端地址
getRemoteAddr():获取客户端的IP地址
getRemoteHost():获取客户端的名字
getSession([Booleancreate]):返回和请求相关Session
getServerName():获取服务器的名字
getServletPath():获取客户端所请求的脚本文件的路径
getServerPort():获取服务器的端口号
removeAttribute(Stringname):删除请求中的一个属性
ASPNET是没有办法的,同一局域网内的所有机器访问你的站点,RequestUserHostAddress都是同样的(即这些机器公用的外网IP),这些机器他们并没有自己的(也就是你所谓的真正"的,其实这么说也不太准确)外网IP。
你不是web项目那么request是什么了?
你可以定义一个接口,接口中有setRequest方法,和getRemoteAddr方法
然后在你的主Servlet中将Request设置进去,
再通过getRemoteAddr方法取得IP
实现类中定义一个Request属性,通过setRequest方法设置,
getRemoteAddr方法调用requestgetRemoteAddr方法。
还是没有搞明白你到底要干什么为什么没有request~web项目到处都是request啊~
这样不行吗
InetAddress addr = InetAddressgetLocalHost();
String ip=addrgetHostAddress()toString();//获得本机IP
在使用ServletRequest获取客户端ip的时候,不仅仅只使用getRemoteHost来获取,还要使用XFF(X-Forwarded-For)。
X-Forwarded-For是>
win7下获取的是ipv6地址,::1代表本机,这个暂时没有解决方法,可如下判断:
ip=RequestserverVariables("REMOTE_ADDR")
if ip="::1" then ip="127001"
以上就是关于java中Request对象的主要方法有哪些全部的内容,包括:java中Request对象的主要方法有哪些、Request.UserHostAddress获取到的是外网的IP,怎么获取到客户端的IP、在一个java接口中获取请求客户端的IP地址等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)