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

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

如何在 Go 中正確綁定 postgresql 變量?

如何在 Go 中正確綁定 postgresql 變量?

Go
有只小跳蛙 2023-05-08 15:14:39
我有這個返回錯誤的函數(shù)sql: Rows are closed。我不明白為什么...這是功能:func GetUserFromToken(db *sql.DB, token string) User {    query := `        SELECT id, token, name, surname, phone, email FROM users WHERE token=$1        `    rows, err := db.Query(query, token)    if err != nil {        fmt.Println("query error : " + err.Error())    }    var user User    rows.Next()    err = rows.Scan(&user.ID, &user.Token, &user.Name, &user.Surname, &user.Phone, &user.Email)    if err != nil {        fmt.Println("scan error : " + err.Error())    }    return user}當(dāng)我記錄令牌時,它是正確的令牌。當(dāng)我出于測試目的在查詢中對令牌進(jìn)行硬編碼時,它工作正常。例如 :query := `        SELECT id, token, name, surname, phone, email FROM users WHERE token='abcdefg12345'        `還嘗試設(shè)置查詢,例如:query := "SELECT id, token, name, surname, phone, email FROM users WHERE token = $1"row := db.QueryRow(query, "abcdefg12345")它工作正常。fmt.Println(token)版畫abcdefg12345。有人會幫助我了解我所缺少的嗎?更新:發(fā)現(xiàn)我失敗了。所以我擁有的令牌是使用以下函數(shù)從標(biāo)頭中提取的不記名令牌:func GetBearerToken(r *http.Request) string {    reqToken := r.Header.Get("Authorization")    splitToken := strings.Split(reqToken, "Bearer")    reqToken = splitToken[1]    return reqToken}有一個我在 fmt.Println 中沒有注意到的前導(dǎo)空格。在考慮了@RayfenWindspear 的評論后,睡了一夜好覺,我敦促檢查字符串長度,然后我看到了失敗。感覺有點(diǎn)白癡,同時又覺得好笑,因為我沒聽懂。所以我的簡單修復(fù):從:reqToken = splitToken[1] 到: strings.TrimSpace(splitToken[1])
查看完整描述

1 回答

?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗 獲得超11個贊

這是您編寫此代碼的方式。如果未返回任何內(nèi)容,則返回的錯誤將是 sql.ErrNoRows。讓我知道這是如何工作的,然后也許我可以提供其他調(diào)試步驟。


func GetUserFromToken(db *sql.DB, token string) (u User, err error) {

  err = db.QueryRow(

    "SELECT id, token, name, surname, phone, email FROM users WHERE token=$1",

    token,

  ).Scan(

    &u.ID,

    &u.Token,

    &u.Name,

    &u.Surname,

    &u.Phone,

    &u.Email)

  return

}


查看完整回答
反對 回復(fù) 2023-05-08
  • 1 回答
  • 0 關(guān)注
  • 165 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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