菜单
本页目录

Download

go get github.com/birdy02-com/request

使用request库

import  "github.com/birdy02-com/request"

主要功能

  • OPTIONS 请求方法
  • HEAD 请求方法
  • GET 请求方法
  • POST 请求方法
  • PUT 请求方法

其他功能

  1. GetRandomIP: 生成一个随机的IP地址
  2. IsIpv4: 检查一个IP字符串是否为IPv4地址
  3. IsPrivateIP: 判断IP是否为私有地址
  4. RootDomain: 检查一个字符串是否为域名并获取根域名
  5. IsLink: 判断是否为链接
  6. ParseUrl: 格式化URL
  7. GetHeader: 获取默认请求头
  8. HttpHeaderToMap: http.header 转换成 map
  9. HttpHeaderToString: http.header 转换成 String
  10. GetSiteBasic: 提取网站基本信息
  11. GetFaviconPath: 获取favicon.ico的路径

请求参数格式

// GetRequest 请求的参数结构
type GetRequest struct {
	Timeout        int               // 超时时长
	AllowRedirects bool              // 是否跟随跳转
	Verify         bool              // ssl验证证书忽略
	Headers        map[string]string // 请求头
	Params         map[string]string // 请求参数
	Stream         bool
	Engine         bool
	Data           string              // post请求体
	DataJson       map[string]string   // json格式传入post请求体,会格式化成 xx=xx
	Json           map[string]any      // post请求
	File           map[string][]string // 上传的文件,格式参考 file:['文件名','内容','文件类型']
}

响应参数格式

// Response 请求的返回结构
type Response struct {
	Basic struct {
		Title       string // 网页标题
		Description string // 网页描述
		Keywords    string // 网页关键字
		Favicon     string // 网页图标路径
	}
	Redirect   string                 // 重定向地址
	Url        string                 // 响应url
	StatusCode int                    // 响应状态码
	Status     string                 // 响应状态 200 ok
	Timer      float64                // 响应时长
	Headers    http.Header            // 响应头
	Body       string                 // 响应体(str)
	Charset    string                 // 检测到的编码方式
	Content    []byte                 // 响应体(byte)
	Json       map[string]interface{} // 响应的Json内容
	Length     int                    // 响应字节
	Proto      string                 // 响应协议
	ProtoMajor int                    // 响应版本号-主
	ProtoMinor int                    // 响应版本号-子
	Request    struct {
		URL     string      // 请求url
		Method  string      //请求方法
		Headers http.Header //请求头
		Body    []byte      // 请求体
	}
}