如何在 Oracle ApEx 中获取 PC 的本地 IP 地址
Posted
技术标签:
【中文标题】如何在 Oracle ApEx 中获取 PC 的本地 IP 地址【英文标题】:How to obtain local IP address of PC within Oracle ApEx 【发布时间】:2010-02-07 23:57:14 【问题描述】:我需要一种从 Oracle ApEx 中获取本地 IP 地址(ipconfig 命令信息中列出的 Windows 框)的方法。
这可能吗? owa_util.get_cgi_env('REMOTE_ADDR')
和 sys_context( 'userenv', 'ip_address' )
我都试过了
似乎无法在 Oracle ApEx 中获取我的本地 PC IP 地址。
有什么想法吗?
【问题讨论】:
【参考方案1】:要获取 Oracle 客户端 IP 地址,您必须使用您建议的 IP 地址::
select sys_context('userenv','ip_address')
from dual;
要获取 Oracle 服务器 IP 地址,您可以使用:
select utl_inaddr.get_host_address(sys_context('userenv','server_host'))
from dual;
更新(来自评论):如果您正在寻找应用程序服务器 IP,既不是客户端也不是服务器。对?这不能通过oracle获得。这就像向 oracle 询问 Web 服务器 IP。由于 Oracle Appex 是 100% PLSQL,因此您无法获取此信息。
【讨论】:
感谢您回复我。不幸的是,我尝试了这两种方法,但都无济于事。此处设置数据库的方式是通过负载均衡器来确定用户将连接到的应用服务器内。我认为这种设置存在问题。 你在找应用服务器IP? 我实际上是在 Windows 机器上寻找本地 PC IP。如果您进入 Windows 的命令窗口并发出 ipconfig,您将看到 IP 地址值。这是我需要在 Oracle 中达到的值。【参考方案2】:请记住,您的 PC 通过 ipconfig 告诉您的内容可能是本地网络 IP 地址。我家的 PC 被本地路由器分配其地址为 192.168.0.10,这将与全球网络上的一万台其他 PC 相同。
也就是说,看看this 或this 是否有帮助。
【讨论】:
以上是关于如何在 Oracle ApEx 中获取 PC 的本地 IP 地址的主要内容,如果未能解决你的问题,请参考以下文章
如何获取要显示在 Oracle APEX 交互式报告中的图像或链接?
如何获取 Oracle APEX 文本字段值(现在我得到的都是 NULL)(Oracle APEX Application Express 21.1)
如何在没有 Web 源模块的情况下从 Oracle APEX 中的 API 获取数据