问题描述
axis2服务器端如何取得客户端的ip地址和mac地址?我现在用的都是http协议的,理论上应该可以的呀!
解决方案
/** * 获取客户端IP地址,如调用方的IP,以便检查权限。 * 适用于axis发布的webservice * @return */ public String getClientIpAxis() { MessageContext mc = null; HttpServletRequest request = null; try { mc = MessageContext.getCurrentMessageContext(); if (mc == null) throw new Exception(“无法获取到MessageContext”); request = (HttpServletRequest) mc .getProperty(HTTPConstants.MC_HTTP_SERVLETREQUEST); System.out.println(“remote ip: ” + request.getRemoteAddr()); } catch (Exception e) { System.out.println(e.getMessage()); e.printStackTrace(); } return request.getRemoteAddr(); }
解决方案二:
兄弟,AXIS2可以获得ip地址,但是你要获取MAC地址,不是HTTP协议所能完成的事情,呵呵,就像火车上的人是不知道火车轮胎由哪个厂家造的。
解决方案三:
另外,mac地址一般是很难获取到的。
时间: 2024-12-02 15:20:55