記一次因為共享變數的犯錯誤

lyxxxh發表於2020-10-16

問題復現

在models/User.php

var UserModel = new (User)

控制器

    if models.UserModel.Token == "" {
        models.UserModel.Token = "hello world"
    }

因為 var UserModel = new (User) 只會new 一次,每個請求都共享的這個變數的。

導致以後這個 if 只會執行一次,還是隻能乖乖的 new 一個新的指標。

乖乖的 new

    var UserModel = new (models.User)
    if UserModel.Token == "" {
        UserModel.Token = "hello world"
    }

結尾

花費幾小時 debug 才找到問題的,犯了基礎的錯誤。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
專心學習不瞎搞

相關文章