Compare commits

...

2 Commits

Author SHA1 Message Date
5c829fe029 add GetError method to Error type
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-08-31 23:56:56 +03:00
3e1ffcb989 add all http request metadata
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-08-11 12:47:44 +03:00
2 changed files with 16 additions and 0 deletions

View File

@@ -89,6 +89,14 @@ func (h *httpServer) ServeHTTP(w http.ResponseWriter, r *http.Request) {
for k, v := range r.Header {
md.Set(k, strings.Join(v, ", "))
}
md.Set("RemoteAddr", r.RemoteAddr)
md.Set("Method", r.Method)
md.Set("URL", r.URL.String())
md.Set("Proto", r.Proto)
md.Set("ContentLength", fmt.Sprintf("%d", r.ContentLength))
md.Set("TransferEncoding", strings.Join(r.TransferEncoding, ","))
md.Set("Host", r.Host)
md.Set("RequestURI", r.RequestURI)
ctx = metadata.NewIncomingContext(ctx, md)
defer r.Body.Close()

View File

@@ -13,6 +13,14 @@ func SetError(err interface{}) error {
return &Error{err: err}
}
// GetError return underline error
func GetError(err interface{}) interface{} {
if verr, ok := err.(*Error); ok {
return verr.err
}
return err
}
// Error struct holds error
type Error struct {
err interface{}