MCPcopy
hub / github.com/cbeuw/Cloak / writeUserInfoHlr

Method writeUserInfoHlr

internal/server/usermanager/api_router.go:83–110  ·  view source on GitHub ↗
(w http.ResponseWriter, r *http.Request)

Source from the content-addressed store, hash-verified

81}
82
83func (ar *APIRouter) writeUserInfoHlr(w http.ResponseWriter, r *http.Request) {
84 b64UID := gmux.Vars(r)["UID"]
85 if b64UID == "" {
86 http.Error(w, "UID cannot be empty", http.StatusBadRequest)
87 return
88 }
89 UID, err := base64.URLEncoding.DecodeString(b64UID)
90 if err != nil {
91 http.Error(w, err.Error(), http.StatusBadRequest)
92 return
93 }
94
95 var uinfo UserInfo
96 err = json.NewDecoder(r.Body).Decode(&uinfo)
97 if err != nil {
98 http.Error(w, err.Error(), http.StatusBadRequest)
99 return
100 }
101 if !bytes.Equal(UID, uinfo.UID) {
102 http.Error(w, "UID mismatch", http.StatusBadRequest)
103 }
104
105 err = ar.manager.WriteUserInfo(uinfo)
106 if err != nil {
107 http.Error(w, err.Error(), http.StatusInternalServerError)
108 }
109 w.WriteHeader(http.StatusCreated)
110}
111
112func (ar *APIRouter) deleteUserHlr(w http.ResponseWriter, r *http.Request) {
113 b64UID := gmux.Vars(r)["UID"]

Callers

nothing calls this directly

Calls 1

WriteUserInfoMethod · 0.65

Tested by

no test coverage detected