using Azylee.Core.DataUtils.StringUtils;
using Azylee.Jsons;
using Azylee.YeahWeb.HttpUtils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Azylee.YeahWeb.ExtWebAPI.IPAddressAPI
{
///
/// 公网IP地址API
///
public class PublicIPAddressTool
{
const string URL = "http://pv.sohu.com/cityjson?ie=utf-8";
///
/// 获取公网IP地址API
///
///
public static PublicIPAddressModel GetPublicIP()
{
string rs = HttpTool.Get(URL);
if (Str.Ok(rs))
{
int flagbeg = rs.IndexOf("{");
int flagend = rs.LastIndexOf("}");
if (flagbeg < flagend)
{
rs = rs.Substring(flagbeg, flagend - flagbeg + 1);
Dictionary model = Json.String2Object>(rs);
if (model != null)
{
model.TryGetValue("cip", out string cip);
model.TryGetValue("cid", out string cid);
model.TryGetValue("cname", out string cname);
PublicIPAddressModel result = new PublicIPAddressModel(cip, cid, cname);
return result;
}
}
}
return null;
}
}
}