在 Vaadin 14 应用程序的服务器端通过 Java 获取用户 Web 浏览器的 IP 地址

Bas*_*que 2 browser ip-address vaadin vaadin-flow

Vaadin Flow中,例如版本 14.1,如何通过服务器端的Java调用获取user\xe2\x80\x99s Web 浏览器的IP 地址?

\n\n

与问题类似,在 Vaadin 7 Web 应用程序中获取用户\xe2\x80\x99s IP 地址和其他客户端信息,但适用于 Vaadin Flow 而不是 Vaadin 7 & 8。

\n

Bas*_*que 5

WebBrowser::getAddress

\n\n

在 Vaadin Flow 中,使用该类WebBrowser::getAddress获取用户的 IP 地址。

\n\n

要获取WebBrowser对象,请询问当前 VaadinSession对象。

\n\n
String ipAddress = VaadinSession.getCurrent().getBrowser().getAddress() ;\n
Run Code Online (Sandbox Code Playgroud)\n\n

WebBrowser对象还包含有关 client\xe2\x80\x99s 浏览器类型和版本、其当前默认值Locale、主机操作系统、 browser\xe2\x80\x99s 处理现代 Vaadin Flow Web 应用程序的能力等信息。

\n\n

顺便说一句,在 Vaadin 14 中,您可以在客户端上运行 JavaScript 片段。因此,这可能是获取有关客户端用户的浏览器和主机的更多详细信息的一种方法。Vaadin 15 大大增强了对客户端 JavaScript 执行的支持,同时保持与服务器上 Vaadin Flow Java 运行时的通信。

\n