MCPcopy Create free account
hub / github.com/0xUnixIO/pulse / handleRegenerateSubToken

Method handleRegenerateSubToken

internal/serverapi/users.go:447–464  ·  view source on GitHub ↗

handleUserCredentials 管理用户全局凭证(UUID / Secret)。 GET 返回当前凭证;PUT 更新凭证(留空则重新随机生成),随后触发全节点配置下发。 handleRegenerateSubToken 重新生成用户的 sub_token,使老的订阅链接失效。 仅接受 POST,token 由服务端用 crypto/rand 生成。

(w http.ResponseWriter, r *http.Request, userID string)

Source from the content-addressed store, hash-verified

445// handleRegenerateSubToken 重新生成用户的 sub_token,使老的订阅链接失效。
446// 仅接受 POST,token 由服务端用 crypto/rand 生成。
447func (a *userAPI) handleRegenerateSubToken(w http.ResponseWriter, r *http.Request, userID string) {
448 if r.Method != http.MethodPost {
449 writeJSON(w, http.StatusMethodNotAllowed, map[string]any{"error": "method not allowed"})
450 return
451 }
452 user, err := a.users.GetUser(userID)
453 if err != nil {
454 writeUserError(w, err)
455 return
456 }
457 user.SubToken = randomToken(16)
458 updated, err := a.users.UpsertUser(user)
459 if err != nil {
460 writeJSON(w, http.StatusInternalServerError, map[string]any{"error": err.Error()})
461 return
462 }
463 writeJSON(w, http.StatusOK, map[string]any{"sub_token": updated.SubToken})
464}
465
466func (a *userAPI) handleUserCredentials(w http.ResponseWriter, r *http.Request, userID string) {
467 user, err := a.users.GetUser(userID)

Callers 1

handleUserRoutesMethod · 0.95

Calls 6

writeUserErrorFunction · 0.85
writeJSONFunction · 0.70
randomTokenFunction · 0.70
GetUserMethod · 0.65
UpsertUserMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected