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

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

恐慌接口轉(zhuǎn)換接口 {} 是 float64 而不是 int64

恐慌接口轉(zhuǎn)換接口 {} 是 float64 而不是 int64

Go
慕容708150 2022-10-24 16:18:50
我收到以下錯誤panic: interface conversion: interface {} is float64, not int64我不確定 float64 來自哪里 我將類型設(shè)置為 int64 但不確定 float64 來自哪里type AccessDetails struct {    AccessUuid   string  `json:"access_uuid"`    Email        string  `json:"email"`    Refresh      int64    `json:"refresh"`    Expiry       int64   `json:"expiry"`    Permission   string  `json:"permission"`    Scope        string  `json:"scope"`}func GetAccessDetails(c *fiber.Ctx) (*AccessDetails, error) {    ad := &AccessDetails{}    cookie := c.Cookies("access_token")    var err error    token, err := jwt.Parse(cookie, func(token *jwt.Token) (interface{}, error) {        return []byte(os.Getenv("ACCESS_SECRET")), nil    })    if err != nil {        return nil, err    }    payload := token.Claims.(jwt.MapClaims)        ad.Email = payload["sub"].(string)    ad.AccessUuid = payload["access_uuid"].(string)    ad.Refresh = payload["refresh"].(int64)    ad.Expiry = payload["exp"].(int64)    ad.Permission = payload["permission"].(string)    ad.Scope = payload["scope"].(string)    return ad, nil}錯誤似乎來自ad.Refresh = payload["refresh"].(int64) 我認為我只需要知道如何將類型從 float64 轉(zhuǎn)換為 int64 的行,反之亦然,用于接口 {}我已經(jīng)嘗試了一切將類型更改回 int64 的方法,但是我遇到了一個錯誤,現(xiàn)在需要幫助才能繼續(xù)前進這是 cookie 中的有效負載數(shù)據(jù)在 jwt 解碼后的樣子的示例{  "access_uuid": "c307ac76-e591-41d0-a638-6dcc2f963704",  "exp": 1642130687,  "permission": "user",  "refresh": 1642734587,  "sub": "test3@example.com"}
查看完整描述

1 回答

?
慕姐4208626

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

ad.Refresh = int64(payload["refresh"].(float64))
ad.Expiry = int64(payload["exp"].(float64))

您需要首先斷言接口值的準(zhǔn)確動態(tài)類型,然后,如果成功,您可以其轉(zhuǎn)換為您想要的類型。

請注意,接口值的原因float64是因為這是encoding/json解碼器在將 JSON 數(shù)字解組為interface{}值時的默認設(shè)置。

為了將 JSON 解組為接口值,Unmarshal 將其中一項存儲在接口值中:

bool, for JSON booleans

float64, for JSON numbers

string, for JSON strings

[]interface{}, for JSON arrays

map[string]interface{}, for JSON objects

nil for JSON null


查看完整回答
反對 回復(fù) 2022-10-24
  • 1 回答
  • 0 關(guān)注
  • 242 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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