您的位置:首页 > 其它

ip定位,百度地图地位

2014-12-03 10:45 204 查看
1,到百度开发者中心申请key值既ak

应用类型为:for browser ,refer白名单为: *

using CodeTitans.JSon;

using System;

using System.Collections.Generic;

using System.IO;

using System.Linq;

using System.Net;

using System.Text;

using System.Web;

/// <summary>

/// IP_locating 的摘要说明

/// </summary>

public class IP_locating

{

public IP_locating()

{

}

public static string IPLocate()

{

string postString = "ak=mHM6XBGGTyjlYsZPOHsexecf&ip=" + "121.25.163.84";// GetIP(); //这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是form里面每一个name都要加进来 ak即key值

byte[] postData = Encoding.UTF8.GetBytes(postString); //编码,尤其是汉字,事先要看下抓取网页的编码方式

string url = "http://api.map.baidu.com/location/ip"; //地址

WebClient webClient = new WebClient();

webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); //采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可

byte[] responseData = webClient.UploadData(url, "post", postData); //得到返回字符流

string srcString = Encoding.UTF8.GetString(responseData); //解码

//解析第一层json数据

JSonReader readerfirst = new JSonReader();

IJSonObject jsonfirst = readerfirst.ReadAsJSonObject(srcString);

//解析第二层json数据

JSonReader readersecond = new JSonReader();

IJSonObject jsonsecond = readersecond.ReadAsJSonObject(jsonfirst["content"].ToString());

//解析第三次json数据

JSonReader readerthird = new JSonReader();

IJSonObject jsonthird = readerthird.ReadAsJSonObject(jsonsecond["address_detail"].ToString());

string address = jsonthird["province"].ToString() + "," + jsonthird["city"].ToString().Replace("市","") ;

return address;

}

//获取本机的公网IP

private static string GetIP()

{

string tempip = "";

try

{

WebRequest wr = WebRequest.Create("http://www.ip138.com/ip2city.asp");

Stream s = wr.GetResponse().GetResponseStream();

StreamReader sr = new StreamReader(s, Encoding.Default);

string all = sr.ReadToEnd(); //读取网站的数据

int start = all.IndexOf("[") + 1;

int end = all.IndexOf("]", start);

tempip = all.Substring(start, end - start);

sr.Close();

s.Close();

}

catch

{

}

return tempip;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: