一个易用于网页、API 环境下的 Golang HTTP Client 库

zhshch · 2020-07-13 11:39:33 · 2183 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2020-07-13 11:39:33 的主题,其中的信息可能已经有所发展或是发生改变。

go get -u github.com/zhshch2002/goreq
package main

import (
    "fmt"
    "github.com/zhshch2002/goreq"
)

func main() {
    h, err := goreq.Get("https://httpbin.org/").Do().HTML()
    if err != nil {
        panic(err)
    }
    fmt.Println(h.Find("title").Text())
}

支持的链式配置:

  • AddParam(k, v string)
  • AddParams(v map[string]string)
  • AddHeader(key, value string)
  • AddHeaders(v map[string]string)
  • AddCookie(c *http.Cookie)
  • SetUA(ua string)
  • SetBasicAuth(username, password string)
  • SetProxy(urladdr string)
  • Set request body data
    • SetBody(b io.Reader) basic setting
    • SetRawBody(b []byte)
    • SetFormBody(v map[string]string)
    • SetJsonBody(v interface{})
    • SetMultipartBody(data ...interface{}) Set a slice ofFormField andFormFile struct as body data
  • Callback(fn func(resp *Response) Set a callback func run after reqDo()

Goreq 支持线程安全,自动处理编码,以及中间件。具体请见README


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2183 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传