写了个小程序下载指定url的文件
发现url文件是缓存在cdn下面的,每次获取可能连到不同的ip,本人现在想获取到当前下载的地址ip,查了一堆资料都没有找到。c#能实现这样的需求么?
下面是下载部分的代码
发现url文件是缓存在cdn下面的,每次获取可能连到不同的ip,本人现在想获取到当前下载的地址ip,查了一堆资料都没有找到。c#能实现这样的需求么?
下面是下载部分的代码
//打开网络连接 HttpWebRequest myRequest = (HttpWebRequest)HttpWebRequest.Create(url); if (SPosition > 0) myRequest.AddRange((int)SPosition); //设置Range值 //向服务器请求,获得服务器的回应数据流 Stream myStream = myRequest.GetResponse().GetResponseStream(); //定义一个字节数据 byte[] btContent = new byte[1024]; int intSize = 0; intSize = myStream.Read(btContent, 0, 1024); int startTime=Environment.TickCount; while (intSize > 0) { FStream.Write(btContent, 0, intSize); intSize = myStream.Read(btContent, 0, 1024); int useTime=Environment.TickCount - startTime ; if ((speed>0)&&(useTime < (1000 / speed)))//speed小于等于0的话则取消限速 { Thread.Sleep(1000 / speed); } startTime = Environment.TickCount; } //关闭流 FStream.Close(); myStream.Close(); flag = true; //返回true下载成功
解决方案
20
帮你试出来了。
不过本人就不清楚你要这个IP干嘛
20
假如4楼不能实现,那么还可以尝试两条路,一条是系统api找找网络相关接口,本人记得有能拿到cookie的,但不知道能不能拿到ip,另一条是本人做socket做http协议,包括握手,送包,收包,解析包,这期间可以拿到ip及端口等信息。别的暂时没想到