返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >基于GO的IP地址查询
  • 689
分享到

基于GO的IP地址查询

2024-04-02 19:04:59 689人浏览 八月长安
摘要

一、开通接口 免费IP地址查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过https://www.juhe.cn/docs/api/id/1 注册及开通。 二、使用Go调用接口 package main import

一、开通接口

免费IP地址查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过https://www.juhe.cn/docs/api/id/1 注册及开通。

二、使用Go调用接口

package main

import (
	"net/url"
	"fmt"
	"net/Http"
	"io/ioutil"
	"encoding/JSON"
)

func main() {
	// 接口请求URL
	apiUrl := "http://apis.juhe.cn/ip/ipNew"

	// 初始化参数
	param := url.Values{}

	// 配置请求参数,方法内部已处理urlencode问题,中文参数可以直接传参
	param.Set("ip", "58.215.155.153")                    // 需要查询的IP地址
	param.Set("key", "您在聚合申请的接口请求Key") // 接口请求Key

	// 发送请求
	data, err := Get(apiUrl, param)
	if err != nil {
		// 请求异常,根据自身业务逻辑进行调整修改
		fmt.Errorf("请求异常:\r\n%v", err)
	} else {
		var netReturn map[string]interface{}
		jsonerr := json.Unmarshal(data, &netReturn)
		if jsonerr != nil {
			// 解析JSON异常,根据自身业务逻辑进行调整修改
			fmt.Errorf("请求异常:%v", jsonerr)
		} else {
			errorCode := netReturn["error_code"]
			reason := netReturn["reason"]
			data := netReturn["result"]

			if errorCode.(float64) == 0 {
				// 查询成功,根据自身业务逻辑进行调整修改
				fmt.Printf("查询结果\n国家:%v\n省份:%v\n城市:%v\n运营商:%v\n",
					data.(map[string]interface{})["Country"],
					data.(map[string]interface{})["Province"],
					data.(map[string]interface{})["City"],
					data.(map[string]interface{})["Isp"])
			} else {
				// 查询失败,根据自身业务逻辑进行调整修改
				fmt.Printf("查询失败:%v_%v", errorCode.(float64), reason)
			}
		}
	}
}

// get 方式发起网络请求

func Get(apiURL string, params url.Values) (rs []byte, err error) {
	var Url *url.URL
	Url, err = url.Parse(apiURL)
	if err != nil {
		fmt.Printf("解析url错误:\r\n%v", err)
		return nil, err
	}
	//如果参数中有中文参数,这个方法会进行URLEncode
	Url.RawQuery = params.Encode()
	resp, err := http.Get(Url.String())
	if err != nil {
		fmt.Println("err:", err)
		return nil, err
	}
	defer resp.Body.Close()
	return ioutil.ReadAll(resp.Body)
}

// post 方式发起网络请求 ,params 是url.Values类型
func Post(apiURL string, params url.Values) (rs []byte, err error) {
	resp, err := http.PostFORM(apiURL, params)
	if err != nil {
		return nil, err
	}
	defer resp.Body.Close()
	return ioutil.ReadAll(resp.Body)
}

--结束END--

本文标题: 基于GO的IP地址查询

本文链接: https://lsjlt.com/news/99244.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 基于GO的IP地址查询
    一、开通接口 免费IP地址查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过https://www.juhe.cn/docs/api/id/1 注册及开通。 二、使用GO调用接口 package main import...
    99+
    2024-04-02
  • 基于PHP的IP地址归属地查询
    基于PHP的IP地址归属地查询 // 接口请求Key,可以通过https://www.juhe.cn/docs/api/id/1免费申请开通 $appkey = "*********************"; //根...
    99+
    2024-04-02
  • 基于Python的免费IP地址归属地查询
    一、开通接口 IP地址归属地查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过 https://www.juhe.cn/docs/api/id/1 注册及开通。 二、请求接口 #!/usr/bin/python # -*...
    99+
    2024-04-02
  • 基于node.js的免费IP地址归属地查询
    一、开通接口 IP地址归属地查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过 https://www.juhe.cn/docs/api/id/1 注册及开通。 二、GET方式请求接口 //node request模块安...
    99+
    2024-04-02
  • linux怎样查询ip地址
    这期内容当中小编将会给大家带来有关linux怎样查询ip地址,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。linux查询ip地址的方法:1、打开linux操作系统,进入操作界面;2、在桌面上点击鼠标右键,...
    99+
    2023-06-22
  • 如何查询自己的ip地址
    要查询自己的IP地址,可以按照以下步骤进行操作:1. 打开任意网络浏览器,例如谷歌浏览器、火狐浏览器等。2. 在搜索引擎中输入“wh...
    99+
    2023-09-07
    ip地址
  • 电脑ip地址如何查询
    这篇文章主要讲解了“电脑ip地址如何查询”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“电脑ip地址如何查询”吧!电脑ip地址查询方法:方法一: 直接百度搜索“IP地址”就可以看到了 方法二:...
    99+
    2023-07-01
  • Java如何根据网址查询DNS/IP地址
    这篇文章给大家分享的是有关Java如何根据网址查询DNS/IP地址的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。需求: 给定一个URL地址, 例如: http://www.cncounter.com/tools/...
    99+
    2023-05-30
    java dns
  • 查询ubuntu的ip地址命令是什么
    查询ubuntu的ip地址命令是“ip”,在终端的使用方式如下:ip addr show注意:它可以同时返回IPv4和IPv6地址。...
    99+
    2024-04-02
  • 自己的电脑ip地址怎么查询
    要查询自己电脑的IP地址,可以按照以下步骤进行:1. 打开命令提示符(在Windows上,按下Win键+R,然后键入cmd并按下回车...
    99+
    2023-09-05
    电脑
  • 基于GO的免费手机号码归属地查询
    开通接口 免费手机号码(段)归属地查询服务使用聚合数据提供的免费接口,每天可以100次免费调用。可以通过https://www.juhe.cn/docs/api/id/1 注册及开通。 请求接口 package main import (...
    99+
    2024-04-02
  • 怎么在电脑上查询IP地址
    这篇文章主要讲解了“怎么在电脑上查询IP地址”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在电脑上查询IP地址”吧!方法一:快捷键只需按下Win和R键,然后输入cmd,点击确定,在弹出框...
    99+
    2023-06-20
  • 查询自己的IP地址(内网和外网)
    查询自己的内网IP和外网IP的方法,以及判断是否直接连接到公网 本方法使用命令行,无需其他软件 内网IP,即局域网IP: 打开cmd窗口,输入 ipconfig 后回车 IPv4地址一栏下即为内网IP,我的电脑是192.168.3....
    99+
    2023-08-31
    tcp/ip 网络 服务器 Powered by 金山文档
  • PHP怎么根据ip查询详细地址
    这篇文章将为大家详细讲解有关PHP怎么根据ip查询详细地址,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php根据ip查询详细地址的方法:1、使用“curl_setopt(curl_init(),设置的选...
    99+
    2023-06-14
  • Linux系统查询IP地址的命令是什么
    今天就跟大家聊聊有关Linux系统查询IP地址的命令是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。查寻ip方法/步骤1:打开linux操作系统在进入到界面方法/步骤2:在桌面右...
    99+
    2023-06-28
  • win10中怎么查询本机的内网IP地址
    要查询本机的内网IP地址,可以按照以下步骤进行操作: 打开“设置”:可以通过点击“开始”菜单,然后点击“设置”图标来打开“设置”...
    99+
    2023-10-25
    win10
  • Python怎么进行最简单的IP地址查询
    本篇文章给大家分享的是有关Python怎么进行最简单的IP地址查询,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。今天为大家介绍一个利用Python做一个简单IP查询地址案例分析...
    99+
    2023-06-02
  • 没有联网的电脑ip地址如何查询
    这篇文章主要介绍“没有联网的电脑ip地址如何查询”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“没有联网的电脑ip地址如何查询”文章能帮助大家解决问题。没有联网的电脑ip地址查询方法可以通过运行cmd...
    99+
    2023-07-01
  • 怎么配置基于ip地址的虚拟主机
    要基于IP地址配置虚拟主机,您可以按照以下步骤进行操作:1. 首先,确保您的服务器上有多个IP地址可供使用。您可以通过运行`ip a...
    99+
    2023-08-26
    虚拟主机
  • 查看自己的ip地址
    要查看自己的IP地址,可以使用以下方法之一:1. 使用网络工具:打开浏览器,搜索“what is my ip”,然后点击搜索结果中的...
    99+
    2023-09-07
    ip地址
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作