Skip to content
This repository has been archived by the owner on Oct 31, 2022. It is now read-only.
/ ok Public archive

👌 The most simple but handy HTTP request library for Go.

License

Notifications You must be signed in to change notification settings

syaning/ok

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ok

The most simple but handy HTTP request library for Go.

Installation

$ go get github.com/syaning/ok

Getting Started

The exported struct ok.RequestWrapper wraps a client, an HTTP request, an HTTP response and a potential error together. When sending a request and get respones, there are 4 steps:

  1. Create a RequestWrapper
    • Request()
    • NewRequest(method, urlStr string)
    • Get(urlStr string)
    • Post(urlStr string)
    • Put(urlStr string)
    • Delete(urlStr string)
    • ...
  2. Prepare the request: set headers, set body, use proxy, ...
    • Method(method string)
    • Url(urlStr string)
    • Query(query string)
    • Set(key, value string)
    • Proxy(proxy string)
    • ...
  3. Send request
    • OK()
  4. Get response and read response body
    • ToBytes()
    • ToString()
    • Pipe(w io.Writer)
    • ToFile(filename string)
    • ...

See full functions and methods on GoDoc.

Examples

HTTP Get

str, err := ok.
    Get("http://httpbin.org/get").
    OK().
    ToString()
fmt.Println(str, err)

HTTP Post JSON

size, err := ok.
    Post("http://httpbin.org/post").
    Json(`{"greeting":"hello world"}`).
    OK().
    Pipe(os.Stdout)
fmt.Println(size, err)

HTTP Post Form

size, err := ok.
    Post("http://httpbin.org/post").
    Form("greeting=hello world").
    OK().
    ToFile("res.json")
fmt.Println(size, err)

Download

size, err := ok.Download("http://httpbin.org/image/png", "img.png")
fmt.Println(size, err)

License

MIT

About

👌 The most simple but handy HTTP request library for Go.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages