javascript - 如何在非 IE 浏览器(Chrome、Firefox、Edge)中的 Oracle APEX #orclapex 中获取 PC 名称(带/不带域)
问题描述
我想获取客户端 PC 的计算机名/主机名。
我的 javascript 代码是这样的,它在 IE 中工作
function GetComputerName() {
try {
var network = new ActiveXObject('WScript.Network');
alert(network.computerName);
}
catch (e) { }
}
我也知道这在 Chrome、Firefox、Edge、Safari 等中不起作用。还尝试从 PL/SQL 函数调用 Java 存储过程,如下所示
import java.net.*;
public class Test {
public static String getHost () {
try {
String hostname = InetAddress.getLocalHost().getCanonicalHostName();
return hostname;
}
catch (Exception e) {
return "Could not find Hostname! Error!";
}
}
}
但是这里的输出是 127.0.0.1。另外,我正在 Oracle 数据库上执行这段 Java 代码,所以我想代码将返回服务器的主机名。
思考:是否可以从 chrome(或任何其他现代浏览器)会话中调用 IE 对象,并为此调用 ActiveXObject 对象?我用谷歌搜索但没有发现这样的实现。
我也对替代实现持开放态度(只要可以在非 IE 浏览器中获取计算机名称)
解决方案
推荐阅读
- apache - 在子目录中提供与根目录中相同的文件
- redirect - 使用 Web 配置进行 URL 重定向
- javascript - Vuetify - v-text-field (type="number") - 设置 null 而不是空字符串
- bash - Bash:从单个文件中单独处理的 json 获取多个值
- elasticsearch - 如何让 ES 支持混合类型的字段?
- python - 如何在keras中使用可学习的权重进行矩阵乘法?
- r - 如何减少大相关矩阵
- excel - 计算产品成本的Excel公式
- c++ - 我正在研究使用 std::variant 的异构列表。有没有办法每次都用一组自定义的 std::variant 类型来初始化它?
- virtual-machine - 为什么我在进行路由跟踪时无法访问我的 ip?