欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何使用?Go?獲取你的?IP?地址(推薦)

 更新時(shí)間:2024年09月18日 08:51:48   作者:techlead_krischang  
在Go語(yǔ)言中,獲取IP地址分為公共IP和私有IP兩種方式,公共IP地址通過(guò)外部API獲取,本文給大家介紹如何使用?Go?獲取你的?IP?地址,感興趣的朋友跟隨小編一起看看吧

一個(gè) IP 地址(互聯(lián)網(wǎng)協(xié)議地址)是分配給連接到網(wǎng)絡(luò)的設(shè)備的唯一標(biāo)識(shí)符,允許它們通過(guò)互聯(lián)網(wǎng)或局域網(wǎng)與其他設(shè)備通信。

如何使用 Go 獲取你的 IP 地址呢?

公共 IP 地址 vs 私有 IP 地址

公共 IP 地址是分配給連接互聯(lián)網(wǎng)的設(shè)備的,用于全球訪問(wèn)。它對(duì)互聯(lián)網(wǎng)上的所有人可見(jiàn),并用于外部識(shí)別設(shè)備。相反,私有(本地)IP 地址用于在私有網(wǎng)絡(luò)內(nèi)識(shí)別設(shè)備,僅在該私有網(wǎng)絡(luò)內(nèi)用于通信,外部不可見(jiàn)。

如何在 Go 中獲取公共 IP 地址

在 Go 中,可以使用 net/http 包發(fā)起 HTTP 請(qǐng)求,從外部 API 獲取公共 IP 地址。

package main
import (
    "fmt"
    "io/ioutil"
    "net/http"
)
func main() {
    response, err := http.Get("https://api.ipquery.io")
    if err != nil {
        fmt.Println("獲取公共 IP 時(shí)出錯(cuò):", err)
        return
    }
    defer response.Body.Close()
    body, _ := ioutil.ReadAll(response.Body)
    fmt.Println("- IP 地址:", string(body))
}

如何在 Go 中獲取本地 IP 地址

要獲取本地 IP 地址,可以使用 net 包并檢索網(wǎng)絡(luò)接口,檢查系統(tǒng)的本地 IP 地址。

package main
import (
    "fmt"
    "net"
)
func main() {
    addrs, err := net.InterfaceAddrs()
    if err != nil {
        fmt.Println("出錯(cuò):", err)
        return
    }
    for _, addr := range addrs {
        if ipnet, ok := addr.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
            if ipnet.IP.To4() != nil {
                fmt.Println("- IP 地址:", ipnet.IP.String())
            }
        }
    }
}

參考來(lái)源

到此這篇關(guān)于如何使用 Go 獲取你的 IP 地址的文章就介紹到這了,更多相關(guān)Go 獲取 IP 地址內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Golang Slice和map的坑

    Golang Slice和map的坑

    Golang中的Slice和Map在內(nèi)存空間上,有一些不同,本文主要介紹了Golang Slice和map的坑,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-04-04
  • go語(yǔ)言異常panic和恢復(fù)recover用法實(shí)例

    go語(yǔ)言異常panic和恢復(fù)recover用法實(shí)例

    這篇文章主要介紹了go語(yǔ)言異常panic和恢復(fù)recover用法,實(shí)例分析了異常panic和恢復(fù)recover使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • Go 自動(dòng)升級(jí)依賴版本的幾種方法實(shí)現(xiàn)

    Go 自動(dòng)升級(jí)依賴版本的幾種方法實(shí)現(xiàn)

    Go語(yǔ)言使用GoModules進(jìn)行依賴管理,可以通過(guò)多種方式自動(dòng)升級(jí)依賴,本文就來(lái)介紹Go 自動(dòng)升級(jí)依賴版本的7種方法,感興趣的可以了解一下
    2025-03-03
  • Go語(yǔ)言實(shí)現(xiàn)猜謎小游戲

    Go語(yǔ)言實(shí)現(xiàn)猜謎小游戲

    這篇文章主要為大家介紹了Go語(yǔ)言實(shí)現(xiàn)猜謎小游戲示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • GO語(yǔ)言開(kāi)發(fā)終端命令行小工具改進(jìn)更新

    GO語(yǔ)言開(kāi)發(fā)終端命令行小工具改進(jìn)更新

    這篇文章主要為大家介紹了GO語(yǔ)言開(kāi)發(fā)終端命令行小工具的改進(jìn)更新,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • golang實(shí)現(xiàn)java uuid的序列化方法

    golang實(shí)現(xiàn)java uuid的序列化方法

    這篇文章主要介紹了golang實(shí)現(xiàn)java uuid的序列化方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Go語(yǔ)言實(shí)現(xiàn)漢諾塔算法

    Go語(yǔ)言實(shí)現(xiàn)漢諾塔算法

    之前的文章,我們給大家分享了不少漢諾塔算法的實(shí)現(xiàn)語(yǔ)言,包括C、c++、java、python等,今天我們就來(lái)使用go語(yǔ)言來(lái)實(shí)現(xiàn)一下,需要的小伙伴來(lái)參考下吧。
    2015-03-03
  • 關(guān)于Go你不得不知道的一些實(shí)用小技巧

    關(guān)于Go你不得不知道的一些實(shí)用小技巧

    開(kāi)發(fā)語(yǔ)言上Go成為高并發(fā)業(yè)務(wù)開(kāi)發(fā)的主流語(yǔ)言,再加上云原生技術(shù)底座的驅(qū)動(dòng),Go語(yǔ)言風(fēng)光無(wú)限,下面這篇文章主要給大家介紹了關(guān)于Go你不得不知道的一些實(shí)用小技巧,需要的朋友可以參考下
    2022-11-11
  • 詳解Golang官方中的一致性哈希組件

    詳解Golang官方中的一致性哈希組件

    這篇文章主要為大家詳細(xì)介紹了Golang官方中的一致性哈希組件的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-04-04
  • golang 實(shí)現(xiàn)json類型不確定時(shí)的轉(zhuǎn)換

    golang 實(shí)現(xiàn)json類型不確定時(shí)的轉(zhuǎn)換

    這篇文章主要介紹了golang 實(shí)現(xiàn)json類型不確定時(shí)的轉(zhuǎn)換操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01

最新評(píng)論