我已按照 cooking 书指南中的字母操作,在此处找到https://echo.labstack.com/cookbook/jwt
但是,当使用JWT中间件时,添加自定义错误消息存在一些问题。即使没有给出返回404的详细信息(用户名和密码),登录也可以正常工作。
但是,当JWT丢失时,它返回400,我希望它也返回404。
因此,在我的研究中,我发现了https://forum.labstack.com/t/custom-error-message-in-jwt-middleware/325/3,其中列出了以下middleware.ErrJWTMissing
和middleware.ErrJWTInvalid
,但是如何设置这些值尚不十分清楚?
我试图将它们设置为路由器文件上的var,就像这样
var (
ErrJWTInvalid = echo.NewHTTPError(http.StatusTeapot, "test 104")
ErrJWTMissing = echo.NewHTTPError(http.StatusTeapot, "test 103")
)
但是,仍然出现的错误是400,而不是418(因为这只是测试)。那我在做什么错?
最佳答案
您可以通过这种方式更改HTTP代码和消息。
func init() {
middleware.ErrJWTMissing.Code = 401
middleware.ErrJWTMissing.Message = "Unauthorized"
}
关于go - 如何为JWT中间件使用自定义错误设置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53355859/