第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請求令牌時獲取 nil 而不是 *jwt.Token

請求令牌時獲取 nil 而不是 *jwt.Token

Go
寶慕林4294392 2023-07-10 10:42:36
我正在嘗試使用令牌來驗證用戶角色,但出現(xiàn)錯誤:接口轉(zhuǎn)換:interface {} 為 nil,而不是 *jwt.Token我做了類似的請求用戶 ID 的操作并且它有效,但在這里我似乎無法獲取令牌。代碼:func AdminRoutes(next echo.HandlerFunc) echo.HandlerFunc {    return func(c echo.Context) error {        u := c.Get("user").(*jwt.Token)        claims := u.Claims.(jwt.MapClaims)        for _, item := range routes[claims["role"].(string)] {            if c.Request().RequestURI == item && claims["role"] != "admin" {                return c.JSON(http.StatusUnauthorized, "Role not suitable for function.")            }        }        return next(c)    }}我嘗試過c.Set()令牌,但c.Get()之后不起作用。
查看完整描述

1 回答

?
狐的傳說

TA貢獻1804條經(jīng)驗 獲得超3個贊

返回值,以及您所做的就是對值執(zhí)行類型斷言c.Get("user"),這就是發(fā)生錯誤的原因。nilnil


c.Get()我建議在斷言之前進行一些檢查。


if temp := c.Get("user"); temp != nil {

    u := temp.(*jwt.Token)

    claims := u.Claims.(jwt.MapClaims)

    for _, item := range routes[claims["role"].(string)] {

        if c.Request().RequestURI == item && claims["role"] != "admin" {

            return c.JSON(http.StatusUnauthorized, "Role not suitable for function.")

        }

    }

}


查看完整回答
反對 回復 2023-07-10
  • 1 回答
  • 0 關(guān)注
  • 134 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號