diff --git a/README.md b/README.md index ad9e8d33..968694de 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ - 本地存储 - 阿里云盘 -- Onedrive +- Onedrive/世纪互联 - ... ### 如何使用 diff --git a/drivers/alidrive.go b/drivers/alidrive.go index bdc15038..736c8dfc 100644 --- a/drivers/alidrive.go +++ b/drivers/alidrive.go @@ -191,7 +191,7 @@ func (a AliDrive) GetFiles(fileId string, account *model.Account) ([]AliFile, er if err != nil { return nil, err } else { - _ = model.SaveAccount(*account) + _ = model.SaveAccount(account) return a.GetFiles(fileId, account) } } @@ -312,7 +312,7 @@ func (a AliDrive) Link(path string, account *model.Account) (string, error) { if err != nil { return "", err } else { - _ = model.SaveAccount(*account) + _ = model.SaveAccount(account) return a.Link(path, account) } } @@ -372,13 +372,13 @@ func (a AliDrive) Save(account *model.Account, old *model.Account) error { return } err = a.RefreshToken(&newAccount) - _ = model.SaveAccount(newAccount) + _ = model.SaveAccount(&newAccount) }) if err != nil { return err } account.CronId = int(cronId) - err = model.SaveAccount(*account) + err = model.SaveAccount(account) if err != nil { return err } diff --git a/drivers/onedrive.go b/drivers/onedrive.go index 6006b826..f963d9b6 100644 --- a/drivers/onedrive.go +++ b/drivers/onedrive.go @@ -282,13 +282,13 @@ func (o Onedrive) Save(account *model.Account, old *model.Account) error { return } err = o.RefreshToken(&newAccount) - _ = model.SaveAccount(newAccount) + _ = model.SaveAccount(&newAccount) }) if err != nil { return err } account.CronId = int(cronId) - err = model.SaveAccount(*account) + err = model.SaveAccount(account) if err != nil { return err } @@ -296,7 +296,7 @@ func (o Onedrive) Save(account *model.Account, old *model.Account) error { } func (o Onedrive) Proxy(c *gin.Context) { - + c.Request.Header.Del("Origin") } func (o Onedrive) Preview(path string, account *model.Account) (interface{}, error) { diff --git a/model/account.go b/model/account.go index 6030b01f..39094ede 100644 --- a/model/account.go +++ b/model/account.go @@ -37,19 +37,19 @@ type Account struct { var accountsMap = map[string]Account{} // SaveAccount save account to database -func SaveAccount(account Account) error { - if err := conf.DB.Save(&account).Error; err != nil { +func SaveAccount(account *Account) error { + if err := conf.DB.Save(account).Error; err != nil { return err } - RegisterAccount(account) + RegisterAccount(*account) return nil } -func CreateAccount(account Account) error { - if err := conf.DB.Create(&account).Error; err != nil { +func CreateAccount(account *Account) error { + if err := conf.DB.Create(account).Error; err != nil { return err } - RegisterAccount(account) + RegisterAccount(*account) return nil } diff --git a/server/account.go b/server/account.go index 853d00cd..31587716 100644 --- a/server/account.go +++ b/server/account.go @@ -5,6 +5,7 @@ import ( "github.com/Xhofe/alist/drivers" "github.com/Xhofe/alist/model" "github.com/gin-gonic/gin" + log "github.com/sirupsen/logrus" "strconv" "time" ) @@ -31,9 +32,10 @@ func CreateAccount(c *gin.Context) { } now := time.Now() req.UpdatedAt = &now - if err := model.CreateAccount(req); err != nil { + if err := model.CreateAccount(&req); err != nil { ErrorResp(c, err, 500) } else { + log.Debugf("new account: %+v", req) err = driver.Save(&req, nil) if err != nil { ErrorResp(c, err, 500) @@ -57,9 +59,10 @@ func SaveAccount(c *gin.Context) { old, ok := model.GetAccount(req.Name) now := time.Now() req.UpdatedAt = &now - if err := model.SaveAccount(req); err != nil { + if err := model.SaveAccount(&req); err != nil { ErrorResp(c, err, 500) } else { + log.Debugf("save account: %+v", req) if ok { err = driver.Save(&req, &old) } else {