|
@@ -46,18 +46,18 @@ func Authorize(secret string, opts ...AuthorizeOption) func(http.Handler) http.H
|
|
parser := token.NewTokenParser()
|
|
parser := token.NewTokenParser()
|
|
return func(next http.Handler) http.Handler {
|
|
return func(next http.Handler) http.Handler {
|
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
|
- token, err := parser.ParseToken(r, secret, authOpts.PrevSecret)
|
|
|
|
|
|
+ tok, err := parser.ParseToken(r, secret, authOpts.PrevSecret)
|
|
if err != nil {
|
|
if err != nil {
|
|
unauthorized(w, r, err, authOpts.Callback)
|
|
unauthorized(w, r, err, authOpts.Callback)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
- if !token.Valid {
|
|
|
|
|
|
+ if !tok.Valid {
|
|
unauthorized(w, r, errInvalidToken, authOpts.Callback)
|
|
unauthorized(w, r, errInvalidToken, authOpts.Callback)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
- claims, ok := token.Claims.(jwt.MapClaims)
|
|
|
|
|
|
+ claims, ok := tok.Claims.(jwt.MapClaims)
|
|
if !ok {
|
|
if !ok {
|
|
unauthorized(w, r, errNoClaims, authOpts.Callback)
|
|
unauthorized(w, r, errNoClaims, authOpts.Callback)
|
|
return
|
|
return
|
|
@@ -122,6 +122,12 @@ func newGuardedResponseWriter(w http.ResponseWriter) *guardedResponseWriter {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+func (grw *guardedResponseWriter) Flush() {
|
|
|
|
+ if flusher, ok := grw.writer.(http.Flusher); ok {
|
|
|
|
+ flusher.Flush()
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
func (grw *guardedResponseWriter) Header() http.Header {
|
|
func (grw *guardedResponseWriter) Header() http.Header {
|
|
return grw.writer.Header()
|
|
return grw.writer.Header()
|
|
}
|
|
}
|
|
@@ -138,9 +144,3 @@ func (grw *guardedResponseWriter) WriteHeader(statusCode int) {
|
|
grw.wroteHeader = true
|
|
grw.wroteHeader = true
|
|
grw.writer.WriteHeader(statusCode)
|
|
grw.writer.WriteHeader(statusCode)
|
|
}
|
|
}
|
|
-
|
|
|
|
-func (grw *guardedResponseWriter) Flush() {
|
|
|
|
- if flusher, ok := grw.writer.(http.Flusher); ok {
|
|
|
|
- flusher.Flush()
|
|
|
|
- }
|
|
|
|
-}
|
|
|