我正在尝试使用他们在此处的页面http://www.noip.com/integrate/request指定的调用来更新我在 no-ip.com 上的 IP 地址
到目前为止我试过
Dim webAddress As String = "http://username:password@dynupdate.no-ip.com/nic/update?hostname=mytest.testdomain.com&myip=1.2.3.4"
Process.Start(webAddress)
这给出了错误附加信息:系统找不到指定的文件
我试过这个
Dim req As System.Net.WebRequest = System.Net.WebRequest.Create("http://username:password@dynupdate.no-ip.com/nic/update?hostname=mytest.testdomain.com&myip=1.2.3.4")
Dim resp As System.Net.WebResponse = req.GetResponse
Str = resp.GetResponseStream
它给出错误附加信息:无效的 URI:指定的端口无效。
并且还尝试使用 WebBrowser
WebBrowser1.navigate("http://username:password@dynupdate.no-ip.com/nic/update?hostname=mytest.testdomain.com&myip=1.2.3.4")
它给出错误附加信息:值不在预期范围内。
我认为这可能与这些控件有关 不喜欢链接的格式如何
顺便说一句,我不想使用 no-ip 自己的客户端 ip 更新程序,当然我更改了链接上的详细信息 :) 当我将链接复制并粘贴到 Chrome 中时,它可以正常工作并按预期更改 ip
更新 这现在工作正常
Dim username As String = HttpUtility.UrlEncode("XXX@XXX.XXX")
Dim password As String = HttpUtility.UrlEncode("XXX")
Dim query As String = String.Format("http://{0}:{1}@dynupdate.no-ip.com/nic/update?hostname=XXXXXX.ddns.net&myip=" & TextBox2.Text, username, password)
Process.Start(query)
但理想情况下,我想在不打开浏览器的情况下处理代码中的请求和响应(我只是尝试这样做来检查为什么会出现错误,但这不是理想的解决方案)
当我尝试这个
WebBrowser1.Navigate(query)
它工作正常,现在很好,但是在使用我喜欢使用的这段代码时仍然会出错。
Dim req As System.Net.WebRequest = System.Net.WebRequest.Create(query)
Dim resp As System.Net.WebResponse = req.GetResponse
Str = resp.GetResponseStream
这次我收到错误 401 Unauthorized