Package jsonhttpc provides a way to easily send and receive HTTP requests with JSON bodies.
- Request and response is encoded/decoded as JSON automatically.
- Bit handy for repeating requests.
- specify base URL -
WithBaseURL()
- specify HTTP Client -
WithClient()
- specify HTTP header -
WithHeader()
- specify base URL -
- Tips to customize requests - for
Do()
ContentType() string
onbody
overrides "Content-Type" header. (default is "application/json")
- Responses are automatically JSON-decoded even in case of errors -
Error
- Most of JSON properties are put into
Properties map[string]interface{}
- Error responses that follow RFC7808 Problem Details for HTTP APIs are a bit easier to handle.
- Most of JSON properties are put into
(Japanese)
- リクエストとレスポンスは自動的にJSONエンコード/デコードされます
- リクエストを繰り返し行うのに少し便利です
- ベースURLを設定できる
WithBaseURL()
- HTTP Clientを設定できる
WithClient()
- ヘッダーを設定できる
WithHeader()
- ベースURLを設定できる
- リクエストをカスタマイズするtipsがあります - for
Do()
body
にContentType() string
を実装するとContent-Typeヘッダーを変更 できます (デフォルトはapplication/json
)
- エラーの際もレスポンスは自動的にJSONデコードされます
Error.Properties
にmap[string]interface{}
で入ります- RFC7808 Problem Details for HTTP APIs は少し楽できます
$ go get github.com/koron-go/jsonhttpc@latest