简约而不简单的golang http请求库goreq

goreq
goreq是一个力求最简化的golang http request库,简化仅仅是指使用方法比较简单, 但功能却一点不弱,

简单到极致的普通的request

req := goreq.Req(nil)
    body,_,_ := req.Get("https://www.baidu.com").Do()
    fmt.Print(string(body))

完成一个稍微复杂点的功能,使用以下几行代码就可以完成一个反向代理工具:

package main

import (
    "net/http"
    "github.com/xioxu/goreq"
)

func main() {
    if err := http.ListenAndServe(":8080", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {

        req := goreq.Req(&goreq.ReqOptions{
            Method: r.Method,
            Url:    "https://www.baidu.com" + r.RequestURI,
        })

        req.PipeFromReq(r).PipeToResponse(w)
    })); err != nil {
        panic(err)
    }
}

代码仓库地址: http://www.github.com/xioxu/goreq
欢迎围观点赞!

共 0 个回复