以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  获取外网地址错误  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=107454)

--  作者:包头123
--  发布时间:2017/9/28 12:04:00
--  获取外网地址错误
版主:
      我的系统是上一个版本,不是最近的版本。
      以前在执行下述语句以前执行几年来从来没有出现过问题,近两三天,总是出现超时错误(近期检测时间也长了),另外总是提示参数i未定义。
      我的这部分程序,近一年就没有做过任何修改。
     代码如下:
\'获取外网地址
Dim WinHttpReq As Object = CreateObject("Msxml2.ServerXMLHTTP")
WinHttpReq.Open("GET", "http://1212.ip138.com/ic.asp")
WinHttpReq.Send
\'正则表达式解析出外网IP
Dim str As String = WinHttpReq.ResponseText
Dim mc = System.Text.RegularExpressions.Regex.Matches(str, "[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+")
If mc.count > 0 Then
    Output.Show(mc(0).value)                                    \'mc(0).value 外网地址
End If



    超时错提示如下:
    
图片点击可在新窗口打开查看此主题相关图片如下:2017092801.jpg
图片点击可在新窗口打开查看

   参数i提示如下错误:
   
图片点击可在新窗口打开查看此主题相关图片如下:2017092802.jpg
图片点击可在新窗口打开查看



--  作者:有点甜
--  发布时间:2017/9/28 12:17:00
--  

 

Dim WinHttpReq As Object = CreateObject("Msxml2.ServerXMLHTTP")
WinHttpReq.Open("GET", "http://2017.ip138.com/ic.asp")
WinHttpReq.Send
\'正则表达式解析出外网IP
Dim str As String = WinHttpReq.ResponseText
Dim mc = System.Text.RegularExpressions.Regex.Matches(str, "[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+")
If mc.count > 0 Then
    Output.Show(mc(0).value)                                    \'mc(0).value 外网地址
End If


--  作者:包头123
--  发布时间:2017/9/28 14:03:00
--  
WinHttpReq.Open("GET", "http://2017.ip138.com/ic.asp")

这条语句中的2017将来还会变为2018吗:

WinHttpReq.Open("GET", "http://2018.ip138.com/ic.asp")

--  作者:有点甜
--  发布时间:2017/9/28 14:45:00
--  

测试了一下,没有稳定的、免费的可以返回外网ip的网址,下面地址都可以用

 

http://www.ipip.net/ip.html

 

http://ip.chemdrug.com/

 

http://ip.siteloop.net/