前段时间遇到过一个问题:Flex如何获取本机的计算机名和IP呢???
现在有办法了,
方法1:flex 调用js文件。(本方法网上很多 )
http://hegang793901.blog.163.com/blog/static/65143168201081533619334/ 这位大侠写的很详细。
方法2:Flex 调用后台java
我用的Flex 跟后台java通讯方式是:remoteObject 方式,这里不做解释。主要的地方在于****DAOImpl.java类中代码。
public String getCompuName()
{
Map<String, String> map = System.getenv() ;
String computerName = map.get("COMPUTERNAME");// 获取计算机名
return computerName;
}
public String getIp()
{
InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String ip = addr.getHostAddress().toString();//获得本机IP
return ip;
}
总结:方法1和方法2都可以获取到本机的计算机名和ip,可比较优缺点的话,有一点只有尝试两种方法后才会发现。
方法1的缺点在我之前的一个帖子:“flex 通过js获取ip地址和计算机名称表现在ie中,为什么要对ie的安全级别设置?”
中已经提到,就是IE的安全性。