private static string GetOwnPublicIP()
{
try
{
var html = new WebClient().DownloadString( "http://checkip.dyndns.com/");
var ipStart = html.IndexOf(": ", StringComparison.OrdinalIgnoreCase) + 2;
return html.Substring(ipStart, html.IndexOf("</", ipStart, StringComparison.OrdinalIgnoreCase) - ipStart).Trim();
}
catch (System.Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.ToString());
return string.Empty;
}
}
public static LocationResponseData GetOwnLocation()
{
try
{
string url = string.Format("http://api.ipinfodb.com/v3/ip-city/?key={0}&ip={1}&format={2}", "1ec2f16b88b85a99145af5671fe45e641f051781843dc4dba714ccb09910e52f", GetOwnPublicIP(),"json");
string response = WebUtilities.GethttpRequest(url);
if (response == null)
return null;
return JsonUtilities.JsonToObj<LocationResponseData>(response);
}
catch (System.Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.ToString());
return null;
}
}
public class LocationResponseData
{
public string statusCode { get; set; }
public string statusMessage { get; set; }
public string ipAddress { get; set; }
public string countryCode { get; set; }
public string countryName { get; set; }
public string regionName { get; set; }
public string cityName { get; set; }
public string zipCode { get; set; }
public double latitude { get; set; }
public double longitude { get; set; }
public string timeZone { get; set; }
}
转载于:https://www.cnblogs.com/chuwachen/archive/2013/03/25/3911026.html