我已經設法使用本地上下文通過自定義中間件設置數據庫查詢結果。我正在嘗試了解如何對用戶進行身份驗證,然后從數據庫中提取其詳細信息并將其注入上下文中。這項工作已經完成。路由上最終方法的本地數據實際上是一個接口,我想從我從之前的身份驗證中間件設置的數據中提取字段。我如何將這種接口類型處理成某種形式,如結構或json,以便我可以獲取用于執行某些邏輯的字段和值?user := c.Locals("user") fmt.Println("checking for locals",user)從上面的用戶是結構用戶 {Name string `json:"name"`Emain string `json:"email"`ID string `json:"id"`Password string `json:"password"`}我如何獲得姓名和電子郵件?
1 回答

明月笑刀無情
TA貢獻1828條經驗 獲得超4個贊
因此,在深入研究了光纖文檔并閱讀了有關接口,尤其是空接口的內容之后,我認為我有一個解決方案,但需要糾正
我看到一個人可以將一個接口投射到一個具體的類型。在我的情況下,我會采取的類型c.Locals("user")var user interface{}
然后將其轉換為將指針傳遞給用戶模型的結構,如下所示
user := c.Locals("user")
details, ok :=user.(*models.User)
fmt.Println("checking for locals -----------",details.Name)
- 1 回答
- 0 關注
- 95 瀏覽
添加回答
舉報
0/150
提交
取消