github.com/iikira/iikira-go-utils@v0.0.0-20230610031953-f2cb11cde33a/utils/getip/getip_techain.go (about) 1 package getip 2 3 import ( 4 "bytes" 5 "github.com/iikira/iikira-go-utils/requester" 6 "github.com/iikira/iikira-go-utils/utils/converter" 7 "net/http" 8 ) 9 10 func IPInfoFromTechainBaiduByClient(c *requester.HTTPClient) (ipAddr string, err error) { 11 body, err := c.Fetch(http.MethodGet, "https://techain.baidu.com/srcmon", nil, map[string]string{ 12 "User-Agent": "x18/600000101/10.0.63/4.1.3", 13 "Pragma": "no-cache", 14 "Accept": "*/*", 15 "Content-Type": "application/x-www-form-urlencoded", 16 "x-auth-ver": "1", 17 "Accept-Language": "zh-CN", 18 "x-device-id": "00000000000000000000000000000000", 19 }) 20 if err != nil { 21 return 22 } 23 return converter.ToString(bytes.TrimSpace(body)), nil 24 } 25 26 // IPInfoFromTechainBaidu 从 techain.baidu.com 获取ip 27 func IPInfoFromTechainBaidu() (ipAddr string, err error) { 28 c := requester.NewHTTPClient() 29 return IPInfoFromTechainBaiduByClient(c) 30 }