DriveLinked/pkg/middleware/auth.go

24 lines
482 B
Go
Raw Normal View History

2022-04-03 12:30:50 +08:00
package middleware
import (
"drive-linked/pkg/common"
2022-04-05 18:16:20 +08:00
"drive-linked/pkg/dto"
2022-04-03 12:30:50 +08:00
"github.com/kataras/iris/v12"
)
func SignRequired(ctx iris.Context) {
auth := ctx.GetHeader("Authorization")
//TODO:更详细的判断,包括请求格式是否正确
2022-04-05 18:16:20 +08:00
// 验证token
2022-04-03 12:30:50 +08:00
err := common.ValidateLogin(auth)
if err == nil {
ctx.Values().Set("logged_in", true)
2022-04-05 18:16:20 +08:00
ctx.Next()
} else {
ctx.Values().Set("logged_in", false)
resp := dto.NewResponse(ctx)
resp.ErrUnauthorized()
2022-04-03 12:30:50 +08:00
}
}