This commit is contained in:
2023-05-13 02:33:11 +08:00
parent a2e2853c3f
commit 9087860b86
6 changed files with 68 additions and 30 deletions

45
routers/account.go Normal file
View File

@@ -0,0 +1,45 @@
package routers
import (
"fmt"
"main/models"
"main/utils"
"net/http"
)
// 獲取當前賬戶信息(重寫, 爲輸出增加sid字段)
func AccountGet(w http.ResponseWriter, r *http.Request) {
var account struct {
ID int `json:"id"`
Name string `json:"name"`
Email string `json:"email"`
SessionID string `json:"session_id"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
}
// 獲取Cookie
cookie, err := r.Cookie("session_id")
if err != nil {
fmt.Println(err)
return
}
// 獲取會話
session := models.Session{ID: cookie.Value}
session.Get()
// 獲取用戶
user := models.User{ID: session.UserID}
user.Get()
account.ID = user.ID
account.Name = user.Name
account.Email = user.Email
account.SessionID = session.ID
account.CreatedAt = user.CreatedAt
account.UpdatedAt = user.UpdatedAt
w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.Write(utils.ToJSON(account))
}

View File

@@ -84,7 +84,7 @@ func SessionsPost(w http.ResponseWriter, r *http.Request) {
// 獲取會話
func SessionsItemGet(w http.ResponseWriter, r *http.Request) {
session := models.Session{ID: mux.Vars(r)["id"]}
session := models.Session{ID: mux.Vars(r)["session_id"]}
session.Get()
w.Header().Set("Content-Type", "application/json; charset=utf-8")
w.Write(utils.ToJSON(session))
@@ -92,7 +92,7 @@ func SessionsItemGet(w http.ResponseWriter, r *http.Request) {
// 更新會話
func SessionsItemPatch(w http.ResponseWriter, r *http.Request) {
session := models.Session{ID: mux.Vars(r)["id"]}
session := models.Session{ID: mux.Vars(r)["session_id"]}
session.Get()
session.Update()
w.Header().Set("Content-Type", "application/json; charset=utf-8")