github.com/infraboard/keyauth@v0.8.1/apps/verifycode/http/code.go (about) 1 package http 2 3 import ( 4 "context" 5 "net/http" 6 7 "github.com/infraboard/mcube/http/request" 8 "github.com/infraboard/mcube/http/response" 9 10 "github.com/infraboard/keyauth/apps/verifycode" 11 ) 12 13 func (h *handler) IssueCodeByPass(w http.ResponseWriter, r *http.Request) { 14 req := verifycode.NewIssueCodeRequestByPass() 15 // 从Header中获取client凭证, 如果有 16 req.ClientId, req.ClientSecret, _ = r.BasicAuth() 17 if err := request.GetDataFromRequest(r, req); err != nil { 18 response.Failed(w, err) 19 return 20 } 21 22 req.IssueType = verifycode.IssueType_PASS 23 24 code, err := h.service.IssueCode( 25 context.Background(), 26 req, 27 ) 28 if err != nil { 29 response.Failed(w, err) 30 return 31 } 32 33 response.Success(w, code) 34 return 35 } 36 37 func (h *handler) IssueCodeByToken(w http.ResponseWriter, r *http.Request) { 38 req := verifycode.NewIssueCodeRequestByToken() 39 40 code, err := h.service.IssueCode( 41 r.Context(), 42 req, 43 ) 44 if err != nil { 45 response.Failed(w, err) 46 return 47 } 48 49 response.Success(w, code) 50 return 51 }