mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-05-06 08:30:29 +08:00
🐛 Fix NPE https://ld246.com/article/1716477105045
This commit is contained in:
parent
9f86cb33a7
commit
59af2466ce
@ -105,7 +105,7 @@ func StartFreeTrial() (err error) {
|
|||||||
|
|
||||||
requestResult := gulu.Ret.NewResult()
|
requestResult := gulu.Ret.NewResult()
|
||||||
request := httpclient.NewCloudRequest30s()
|
request := httpclient.NewCloudRequest30s()
|
||||||
_, err = request.
|
resp, err := request.
|
||||||
SetSuccessResult(requestResult).
|
SetSuccessResult(requestResult).
|
||||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
||||||
Post(util.GetCloudServer() + "/apis/siyuan/user/startFreeTrial")
|
Post(util.GetCloudServer() + "/apis/siyuan/user/startFreeTrial")
|
||||||
@ -113,6 +113,10 @@ func StartFreeTrial() (err error) {
|
|||||||
logging.LogErrorf("start free trial failed: %s", err)
|
logging.LogErrorf("start free trial failed: %s", err)
|
||||||
return ErrFailedToConnectCloudServer
|
return ErrFailedToConnectCloudServer
|
||||||
}
|
}
|
||||||
|
if http.StatusOK != resp.StatusCode {
|
||||||
|
logging.LogErrorf("start free trial failed: %d", resp.StatusCode)
|
||||||
|
return ErrFailedToConnectCloudServer
|
||||||
|
}
|
||||||
if 0 != requestResult.Code {
|
if 0 != requestResult.Code {
|
||||||
return errors.New(requestResult.Msg)
|
return errors.New(requestResult.Msg)
|
||||||
}
|
}
|
||||||
@ -530,7 +534,7 @@ var errInvalidUser = errors.New("invalid user")
|
|||||||
func getUser(token string) (*conf.User, error) {
|
func getUser(token string) (*conf.User, error) {
|
||||||
result := map[string]interface{}{}
|
result := map[string]interface{}{}
|
||||||
request := httpclient.NewCloudRequest30s()
|
request := httpclient.NewCloudRequest30s()
|
||||||
_, err := request.
|
resp, err := request.
|
||||||
SetSuccessResult(&result).
|
SetSuccessResult(&result).
|
||||||
SetBody(map[string]string{"token": token}).
|
SetBody(map[string]string{"token": token}).
|
||||||
Post(util.GetCloudServer() + "/apis/siyuan/user")
|
Post(util.GetCloudServer() + "/apis/siyuan/user")
|
||||||
@ -538,6 +542,10 @@ func getUser(token string) (*conf.User, error) {
|
|||||||
logging.LogErrorf("get community user failed: %s", err)
|
logging.LogErrorf("get community user failed: %s", err)
|
||||||
return nil, errors.New(Conf.Language(18))
|
return nil, errors.New(Conf.Language(18))
|
||||||
}
|
}
|
||||||
|
if http.StatusOK != resp.StatusCode {
|
||||||
|
logging.LogErrorf("get community user failed: %d", resp.StatusCode)
|
||||||
|
return nil, errors.New(Conf.Language(18))
|
||||||
|
}
|
||||||
|
|
||||||
code := result["code"].(float64)
|
code := result["code"].(float64)
|
||||||
if 0 != code {
|
if 0 != code {
|
||||||
@ -563,7 +571,7 @@ func UseActivationcode(code string) (err error) {
|
|||||||
code = gulu.Str.RemoveInvisible(code)
|
code = gulu.Str.RemoveInvisible(code)
|
||||||
requestResult := gulu.Ret.NewResult()
|
requestResult := gulu.Ret.NewResult()
|
||||||
request := httpclient.NewCloudRequest30s()
|
request := httpclient.NewCloudRequest30s()
|
||||||
_, err = request.
|
resp, err := request.
|
||||||
SetSuccessResult(requestResult).
|
SetSuccessResult(requestResult).
|
||||||
SetBody(map[string]string{"data": code}).
|
SetBody(map[string]string{"data": code}).
|
||||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
||||||
@ -572,6 +580,10 @@ func UseActivationcode(code string) (err error) {
|
|||||||
logging.LogErrorf("check activation code failed: %s", err)
|
logging.LogErrorf("check activation code failed: %s", err)
|
||||||
return ErrFailedToConnectCloudServer
|
return ErrFailedToConnectCloudServer
|
||||||
}
|
}
|
||||||
|
if http.StatusOK != resp.StatusCode {
|
||||||
|
logging.LogErrorf("check activation code failed: %d", resp.StatusCode)
|
||||||
|
return ErrFailedToConnectCloudServer
|
||||||
|
}
|
||||||
if 0 != requestResult.Code {
|
if 0 != requestResult.Code {
|
||||||
return errors.New(requestResult.Msg)
|
return errors.New(requestResult.Msg)
|
||||||
}
|
}
|
||||||
@ -584,7 +596,7 @@ func CheckActivationcode(code string) (retCode int, msg string) {
|
|||||||
retCode = 1
|
retCode = 1
|
||||||
requestResult := gulu.Ret.NewResult()
|
requestResult := gulu.Ret.NewResult()
|
||||||
request := httpclient.NewCloudRequest30s()
|
request := httpclient.NewCloudRequest30s()
|
||||||
_, err := request.
|
resp, err := request.
|
||||||
SetSuccessResult(requestResult).
|
SetSuccessResult(requestResult).
|
||||||
SetBody(map[string]string{"data": code}).
|
SetBody(map[string]string{"data": code}).
|
||||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.GetUser().UserToken}).
|
||||||
@ -594,6 +606,11 @@ func CheckActivationcode(code string) (retCode int, msg string) {
|
|||||||
msg = ErrFailedToConnectCloudServer.Error()
|
msg = ErrFailedToConnectCloudServer.Error()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if http.StatusOK != resp.StatusCode {
|
||||||
|
logging.LogErrorf("check activation code failed: %d", resp.StatusCode)
|
||||||
|
msg = ErrFailedToConnectCloudServer.Error()
|
||||||
|
return
|
||||||
|
}
|
||||||
if 0 == requestResult.Code {
|
if 0 == requestResult.Code {
|
||||||
retCode = 0
|
retCode = 0
|
||||||
}
|
}
|
||||||
@ -608,7 +625,7 @@ func Login(userName, password, captcha string, cloudRegion int) (ret *gulu.Resul
|
|||||||
|
|
||||||
result := map[string]interface{}{}
|
result := map[string]interface{}{}
|
||||||
request := httpclient.NewCloudRequest30s()
|
request := httpclient.NewCloudRequest30s()
|
||||||
_, err := request.
|
resp, err := request.
|
||||||
SetSuccessResult(&result).
|
SetSuccessResult(&result).
|
||||||
SetBody(map[string]string{"userName": userName, "userPassword": password, "captcha": captcha}).
|
SetBody(map[string]string{"userName": userName, "userPassword": password, "captcha": captcha}).
|
||||||
Post(util.GetCloudServer() + "/apis/siyuan/login")
|
Post(util.GetCloudServer() + "/apis/siyuan/login")
|
||||||
@ -619,6 +636,14 @@ func Login(userName, password, captcha string, cloudRegion int) (ret *gulu.Resul
|
|||||||
ret.Msg = Conf.Language(18) + ": " + err.Error()
|
ret.Msg = Conf.Language(18) + ": " + err.Error()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if http.StatusOK != resp.StatusCode {
|
||||||
|
logging.LogErrorf("login failed: %d", resp.StatusCode)
|
||||||
|
ret = gulu.Ret.NewResult()
|
||||||
|
ret.Code = -1
|
||||||
|
ret.Msg = Conf.Language(18)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
ret = &gulu.Result{
|
ret = &gulu.Result{
|
||||||
Code: int(result["code"].(float64)),
|
Code: int(result["code"].(float64)),
|
||||||
Msg: result["msg"].(string),
|
Msg: result["msg"].(string),
|
||||||
|
Loading…
Reference in New Issue
Block a user