123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package http
- import (
- "net/http"
- "github.com/pkg/errors"
- )
- var (
- imageContentType = []string{"image/jpeg"}
- _ Render = Image{}
- )
- // Render http reponse render.
- type Render interface {
- // Render render it to http response writer.
- Render(http.ResponseWriter) error
- // WriteContentType write content-type to http response writer.
- WriteContentType(w http.ResponseWriter)
- }
- // Image Image.
- type Image struct {
- Body []byte
- }
- // WriteContentType write json ContentType.
- func (j Image) WriteContentType(w http.ResponseWriter) {
- writeContentType(w, imageContentType)
- }
- func writeContentType(w http.ResponseWriter, value []string) {
- header := w.Header()
- if val := header["Content-Type"]; len(val) == 0 {
- header["Content-Type"] = value
- }
- }
- // Render (JSON) writes data with json ContentType.
- func (j Image) Render(w http.ResponseWriter) (err error) {
- if _, err = w.Write(j.Body); err != nil {
- err = errors.WithStack(err)
- }
- return
- }
|