您的位置:首页 > 理论基础 > 计算机网络

C#关于HttpClient的应用(一):获取IP所在的地理位置信息

2016-02-21 15:13 671 查看
public class IpHttpClient:BaseHttpClient
{
private String appKey;
private const string HOST_PATH = "http://apis.baidu.com/apistore/iplookupservice/iplookup";

public IpHttpClient()
{
this.appKey = BaseHelper.GetValue("BaiduAppKey");
}

/// <summary>
/// HTTP 验证
/// </summary>
/// <returns></returns>
public override Dictionary<string, string> Authorization()
{
return new Dictionary<string, string> {{"apikey", this.appKey}};
}

/// <summary>
/// 返回当前Ip所在的地理位置信息
/// </summary>
/// <param name="ip"></param>
/// <returns></returns>
public ResultDTO GetIpAddress(string ip)
{
var reqParams = new Dictionary<String, String>
{
{"ip", ip}
};

var data = this.SendRequest(Method.Get, HOST_PATH, this.BuildQueryStr(reqParams));
var result= JsonHelper.ToObject(data.info.ToString());
if (data.status && Convert.ToInt32(result["errNum"]) == 0)
{
var address = JsonHelper.ToObject(result["retData"].ToString());
return WebApi.Success(address["country"].ToString() + address["province"] + address["city"]);
}
return WebApi.Error(data.info);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: