Code Bye

HttpWebRequest怎么获取当前连接的ip

写了个小程序下载指定url的文件
发现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

引用 9 楼 cuijie09 的回复:

所以说是奇葩需求嘛,能实现么?

假如4楼不能实现,那么还可以尝试两条路,一条是系统api找找网络相关接口,本人记得有能拿到cookie的,但不知道能不能拿到ip,另一条是本人做socket做http协议,包括握手,送包,收包,解析包,这期间可以拿到ip及端口等信息。别的暂时没想到


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明HttpWebRequest怎么获取当前连接的ip