首页 IP查询 IP查询示例代码 IP查询[C#]

IP查询示例代码C#

作者: 阅读数:1121 上传时间:2025-04-23

IP查询

using System;
using System.Net.Http;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;

class Ip
{
    // 替换成你的AppKey
    private const string AppKey = "YOUR_APPKEY_HERE";

    public static async Task locationAsync(string ip)
    {
        try
        {
            using (HttpClient client = new HttpClient())
            {
                // 构造请求URL
                string url = $"https://api.jisuapi.com/ip/location?appkey={AppKey}&ip={ip}";

                // 发送GET请求
                HttpResponseMessage response = await client.GetAsync(url);
                
                // 确保成功响应
                response.EnsureSuccessStatusCode();

                // 读取响应内容
                string responseBody = await response.Content.ReadAsStringAsync();
                JObject result = JObject.Parse(responseBody);

                // 处理API返回状态
                if ((int)result["status"] == 0)
                {
                    // 解析信息
                    JToken data = result["result"];	
                    // 使用字符串插值拼接并输出信息
                    Console.WriteLine($"{data["area"]} {data["type"]}");
                }
                else
                {
                    Console.WriteLine($"查询失败:{result["status"]} {result["msg"]}");
                }
            }
        }
        catch (HttpRequestException ex)
        {
            Console.WriteLine($"请求异常:{ex.Message}");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"发生错误:{ex.Message}");
        }
    }
	
	
	
	static async Task Main(string[] args)
    {
        await Ip.locationAsync("122.224.186.100"); // 加上类名前缀
    }
}