gpt4 book ai didi

javascript - jsp HttpURLConnection getResponseCode 不适用于 'http://192.168.1.xxx' 的格式?

转载 作者:行者123 更新时间:2023-12-03 12:05:46 26 4
gpt4 key购买 nike

我想检查 ip 格式为 ' http://192.168.1.xxx ',

如果响应代码='200',我可以使用javascript将我的网站重定向到该IP。

(没错,我的网站是公共(public)IP,我希望我可以检查是否可以将用户重定向到私有(private)IP)

我使用的代码:

var success=""; var error="";
<%
int resboseCode=0;
HttpURLConnection httpUrlConn;
try{
httpUrlConn = (HttpURLConnection) new URL("http://192.168.1.xx").openConnection();
httpUrlConn.setRequestMethod("HEAD");
httpUrlConn.setConnectTimeout(30000);
httpUrlConn.setReadTimeout(30000);
resboseCode=httpUrlConn.getResponseCode();
%>
sccess='<%= resboseCode %>';
<%
}catch(Exception e){
%>
error="<%= e.getMessage() %>";
<%
}
%>

当我使用 url="http://www.google.com"时,它工作正常,但它会超时,而 url="http://192.168.1.xxx"。

在检查“http://192.168.1.xxx”的格式时,我是否误解了什么是 url,或者是获取响应代码的不同方法? '?

我在互联网上搜索并找到另一种方式是发送套接字,例如isReachable,但结果似乎不符合我想要的?

我还有其他方向来完成这项任务吗?

如有任何建议,我们将不胜感激。

最佳答案

据我了解,您所要求的是不可能的。

公共(public) IP 地址上的网络服务器根本无法联系私有(private) IP 地址。这就是私有(private) IP 地址的要点:流量无法通过公共(public)互联网路由到它们。

私有(private)IP地址用于许多网络,例如办公室内部网和家庭网络。由于这些网络都是彼此分离的,因此相同的 IP 地址可以用于不同网络中的不同设备,不会出现任何问题。可能有数千台设备具有您指定的 192.168.1.xxx 地址:请求应发送到哪一台?

您的办公室网络可能知道如何将流量从您的台式计算机路由到 192.168.1.xxx 地址,但网络服务器不会,除非它也在同一网络上。

关于javascript - jsp HttpURLConnection getResponseCode 不适用于 'http://192.168.1.xxx' 的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25201021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com