netutil

package
v1.2.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 24, 2022 License: MIT Imports: 10 Imported by: 2

Documentation

Overview

Package netutil implements some basic functions to send http request and get ip info. Note: HttpGet, HttpPost, HttpDelete, HttpPut, HttpPatch, function param `url` is required. HttpGet, HttpPost, HttpDelete, HttpPut, HttpPatch, function param `params` is variable, the order is: params[0] is header which type should be http.Header or map[string]string, params[1] is query param which type should be url.Values or map[string]interface{}, params[2] is post body which type should be []byte. params[3] is http client which type should be http.Client.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConvertMapToQueryString

func ConvertMapToQueryString(param map[string]interface{}) string

ConvertMapToQueryString convert map to sorted url query string

func GetInternalIp

func GetInternalIp() string

GetInternalIp return internal ipv4

func HttpDelete

func HttpDelete(url string, params ...interface{}) (*http.Response, error)

HttpDelete send delete http request

func HttpGet

func HttpGet(url string, params ...interface{}) (*http.Response, error)

HttpGet send get http request

func HttpPatch

func HttpPatch(url string, params ...interface{}) (*http.Response, error)

HttpPatch send patch http request

func HttpPost

func HttpPost(url string, params ...interface{}) (*http.Response, error)

HttpPost send post http request

func HttpPut

func HttpPut(url string, params ...interface{}) (*http.Response, error)

HttpPut send put http request

func IsPublicIP

func IsPublicIP(IP net.IP) bool

IsPublicIP verify a ip is public or not

func ParseHttpResponse added in v1.0.8

func ParseHttpResponse(resp *http.Response, obj interface{}) error

ParseHttpResponse decode http response to specified interface

Types

type PublicIpInfo

type PublicIpInfo struct {
	Status      string  `json:"status"`
	Country     string  `json:"country"`
	CountryCode string  `json:"countryCode"`
	Region      string  `json:"region"`
	RegionName  string  `json:"regionName"`
	City        string  `json:"city"`
	Lat         float64 `json:"lat"`
	Lon         float64 `json:"lon"`
	Isp         string  `json:"isp"`
	Org         string  `json:"org"`
	As          string  `json:"as"`
	Ip          string  `json:"query"`
}

PublicIpInfo public ip info: country, region, isp, city, lat, lon, ip

func GetPublicIpInfo

func GetPublicIpInfo() (*PublicIpInfo, error)

GetPublicIpInfo return public ip information return the PublicIpInfo struct

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL