我正在创建一个函数,不会将HttpServletRequest对象作为参数,因为根据会话(可能是通过移动设备或Web浏览器)。如果它是移动设备,它使用纬度和经度,或者如果它来自网络浏览器,我希望能够获取IP地址。有没有办法做到这一点?我看到的每个示例都以HttpServletRequest为参数。有没有办法编写一个函数,使用HttpServletRequest获取IP地址而不将其作为参数传递?
这是我想如果可能的话来完成的,什么的例子。
public String getLocation(Session session) {
switch(session.getLocation()) {
case Mobile:
System.out.printf("Latitude is %s and Longitude is %s\n", session.getLatitude(), session.getLongitude());
break;
case Web:
HttpServletRequest request;
String ipAddress = request.getRemoteAddr();
System.out.printf("The IP Adress is %s", ipAddress);
break;
default:
System.out.print("Error\n");
break;
}
}
是什么类型'Session'? – Mureinik
会话只是一个组成的类,它具有有关用户会话(名称,ID号码,他是通过浏览器还是手机等登录)的信息。这只是我想要完成的一个例子。 @Mureinik – MkIeKuE