1 Star 0 Fork 0

gongpeng/keyauth-gp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
token.go 1.44 KB
一键复制 编辑 原始数据 按行查看 历史
gongpeng 提交于 2023-03-19 15:17 . 添加user服务和token服务
package api
import (
"gitee.com/gongpengABC/keyauth-gp/apps/token"
"gitee.com/gongpengABC/keyauth-gp/common/utils"
"github.com/emicklei/go-restful/v3"
"github.com/infraboard/mcube/http/response"
)
func (h *handler) IssueToken(r *restful.Request, w *restful.Response) {
req := token.NewIssueTokenRequest()
if err := r.ReadEntity(req); err != nil {
response.Failed(w.ResponseWriter, err)
return
}
set, err := h.service.IssueToken(r.Request.Context(), req)
if err != nil {
response.Failed(w.ResponseWriter, err)
return
}
response.Success(w.ResponseWriter, set)
}
func (h *handler) ValidateToken(r *restful.Request, w *restful.Response) { // 用户访问一个内部服务的时候,检验token
// token的获取:Authorization Header
accessToken := utils.GetToken(r.Request)
req := token.NewValidateTokenRequest(accessToken)
ins, err := h.service.ValidateToken(r.Request.Context(), req)
if err != nil {
response.Failed(w.ResponseWriter, err)
return
}
response.Success(w.ResponseWriter, ins)
}
func (h *handler) RevolkToken(r *restful.Request, w *restful.Response) { // token的撤销,比如:用户注销,但是需要权限
req := token.NewRevolkTokenRequest()
if err := r.ReadEntity(req); err != nil {
response.Failed(w.ResponseWriter, err)
return
}
set, err := h.service.RevolkToken(r.Request.Context(), req)
if err != nil {
response.Failed(w.ResponseWriter, err)
return
}
response.Success(w.ResponseWriter, set)
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/gongpengABC/keyauth-gp.git
git@gitee.com:gongpengABC/keyauth-gp.git
gongpengABC
keyauth-gp
keyauth-gp
v0.0.7

搜索帮助

23e8dbc6 1850385 7e0993f3 1850385