1 回答

TA貢獻1820條經驗 獲得超10個贊
根據文檔,這是 的 func 模式:bycrypt.CompareHashAndPassword()
func CompareHashAndPassword(hashedPassword, password []byte) error
要使用它,您需要將(存儲在數據庫中的哈希密碼)作為第一個參數值。hashedPassword
然后將 from 請求參數放入第二個參數。password
func loginData(w http.ResponseWriter, r *http.Request) {
email := r.FormValue("email")
password := r.FormValue("password")
match := database.Findaccount(email, password)
if match == false {
fmt.Println("false")
} else {
fmt.Println("true")
}
}
func Findaccount(myEmail, myPassword string) bool {
collection := Connect.Database("WebApp2").Collection("dataStored")
if err := collection.FindOne(context.TODO(), bson.M{"email": myEmail}).Decode(&Account); err != nil {
fmt.Println("Enter the correct email or password")
}
err := bcrypt.CompareHashAndPassword([]byte(Account.Password), []byte(myPassword))
return err == nil
}
參見 ,語句的第一個參數被填充,它是存儲在 db 上的哈希密碼。Findaccount()bcrypt.CompareHashAndPassword()Account.Password
- 1 回答
- 0 關注
- 120 瀏覽
添加回答
舉報