• ASP.Net 根据IP获取所在省市地址


            /// <summary>
            /// 根据IP获取省市
            /// </summary>
            public void GetAddressByIp()
            {
                string ip = "115.193.217.249";
                string PostUrl = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?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;
            }
  • 相关阅读:
    vue脚手架项目配置后端接口(mock数据)
    list添加删除动画(transition-group)
    fast mock官网mock数据
    vuex日志插件(createLogger)
    环形进度条
    程序员的周末生活
    hbase错误之Region in transition异常解决
    不同虚拟机之间的文件传递
    windows上链接虚拟机
    hadoop——yarn
  • 原文地址:https://www.cnblogs.com/wangbogo/p/2638067.html
Copyright © 2020-2023  润新知