Пример #1
0
func Middleware(h func(http.Handler) http.Handler) middleware.Handler {
	return middleware.HandlerFunc(func(c context.Context, w http.ResponseWriter, r *http.Request) context.Context {
		h(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
			gogo.Next(c, w, r)
		})).ServeHTTP(w, r)
		return nil
	})
}
Пример #2
0
// New returns session middleware
func New(name string, store gorillaSessions.Store) middleware.Handler {
	return middleware.HandlerFunc(func(c context.Context, w http.ResponseWriter, r *http.Request) context.Context {
		session, _ := store.Get(r, sessionName)
		c = context.WithValue(c, storeKey, store)
		// gogo.Session(c).Values["foo"]
		return c
	})
}
Пример #3
0
func voidMiddlewareNode() middlewareNode {
	return middlewareNode{
		handler: middleware.HandlerFunc(func(c context.Context, w http.ResponseWriter, r *http.Request) context.Context {
			return nil
		}),
		next: nil,
	}
}
Пример #4
0
func MiddlewareFromRouterHandler(h Handler) middleware.Handler {
	return middleware.HandlerFunc(func(c context.Context, w http.ResponseWriter, r *http.Request) context.Context {
		h.ServeHTTP(c, w, r)
		return nil
	})
}
Пример #5
0
func (s *Server) UseFunc(h middleware.HandlerFunc) {
	s.Use(middleware.HandlerFunc(h))
}