我使用 golang jwt 中间件。
e.Use(middleware.JWTWithConfig(middleware.JWTConfig{
SigningKey: []byte(os.Getenv("Signing_Key")),
TokenLookup: "header:x-auth-token",
}))
Run Code Online (Sandbox Code Playgroud)
它等待所有功能的令牌,但我不想使用这个中间件进行登录功能。如何防止这种情况发生?
Зел*_*ный 11
有一个skipper功能。您可以使用它来检查要跳过哪条路线。
JWTConfig struct {
// Skipper defines a function to skip middleware.
Skipper Skipper
...
}
Run Code Online (Sandbox Code Playgroud)
检查一个例子:
e.Use(middleware.JWTWithConfig(middleware.JWTConfig{
SigningKey: []byte(os.Getenv("Signing_Key")),
TokenLookup: "header:x-auth-token",
Skipper: func(c echo.Context) bool {
// Skip middleware if path is equal 'login'
if c.Request().URL.Path == "/login" {
return true
}
return false
},
}))
Run Code Online (Sandbox Code Playgroud)