建站资讯

ASP.Net 依据IP获得所属省份详细地址

作者:admin 发布时间:2020-11-18
ASP.Net 依据IP获得所属省份详细地址 创作者:Aisencici / / 归类:Asp .net网站建设 / 访问:1825

 /// summary

        /// 依据IP获得省份

        /// /summary

        public void GetAddressByIp()

        {

            string ip = 115.193.217.249

            string PostUrl = ?ip= + ip;

            string res = GetDataByPost(PostUrl);//此条恳求回到的数据信息为:res=1\t115.193.210.0\t115.194.201.255\t我国\t浙江省\t杭州市\t电信网


            string[] arr = getAreaInfoList(res);

        }


        /// summary

        /// Post恳求数据信息

        /// /summary

        /// param name= url /param

        /// returns /returns

        public string GetDataByPost(string url)

        {

            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

            string s = anything

            byte[] requestBytes = System.Text.Encoding.ASCII.GetBytes(s);

            req.Method = POST

            req.ContentType = application/x-www-form-urlencoded

            req.ContentLength = requestBytes.Length;

            Stream requestStream = req.GetRequestStream();

            requestStream.Write(requestBytes, 0, requestBytes.Length);

            requestStream.Close();


            HttpWebResponse res = (HttpWebResponse)req.GetResponse();

            StreamReader sr = new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);

            string backstr = sr.ReadToEnd();

            sr.Close();

            res.Close();

            return backstr;

        }


        /// summary

        /// 解决所需的数据信息

        /// /summary

        /// param name= ip /param

        /// returns /returns

        public static string[] getAreaInfoList(string ipData)

        {

            //1\t115.193.210.0\t115.194.201.255\t我国\t浙江省\t杭州市\t电信网

            string[] areaArr = new string[10];

            string[] newAreaArr = new string[2];

            try

            {

                //取所需的数据信息,这儿只取省份

                areaArr = ipData.Split( \t

                newAreaArr[0] = areaArr[4];//省

                newAreaArr[1] = areaArr[5];//市

            }

            catch (Exception e)

            {

                // TODO: handle exception

            }

            return newAreaArr;

        }



收缩