Przeglądaj źródła

feat: 对接第三方oauth

tuon 1 rok temu
rodzic
commit
135591952b

+ 3 - 1
.gitignore

@@ -38,4 +38,6 @@ server/data/sessions
 
 /data/sessions
 /conf/app.local.conf
-/build/
+/build/
+
+frontend/.idea

+ 3 - 3
conf/app.conf

@@ -27,9 +27,9 @@ thirdsessioncheckurl =
 
 oauth2_client_id = XVlBzgbaiCMRAjWw111
 oauth2_client_secret = XVlBzgbaiCMRAjWw123
-oauth2_authorize_endpoint = https://www.tonyandmoney.cn/oauth/authorize
-oauth2_token_endpoint = https://www.tonyandmoney.cn/oauth/token
+oauth2_authorize_endpoint = https://api.tonyandmoney.cn/oauth/authorize
+oauth2_token_endpoint = https://api.tonyandmoney.cn/oauth/token
 oauth2_redirect_uri = http://127.0.0.1:5173/
 oauth2_scopes = "userinfo"
-oauth2_userinfo = https://api.tonyandmoney.cn/user/info
+oauth2_userinfo = https://api.tonyandmoney.cn/oauth/user
 oauth2_enable = true

BIN
data/db/sqlite.db


Plik diff jest za duży
+ 0 - 0
frontend/dist/assets/index-1fb20f5f.js


+ 1 - 1
frontend/dist/index.html

@@ -4,7 +4,7 @@
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <title>NginxUI</title>
     <script type="application/javascript" src="./config.js"></script>
-    <script crossorigin="">import('/nginx-ui/assets/index-8a63c82a.js').finally(() => {
+    <script crossorigin="">import('/nginx-ui/assets/index-1fb20f5f.js').finally(() => {
             
     const qiankunLifeCycle = window.moudleQiankunAppLifeCycles && window.moudleQiankunAppLifeCycles['nginx-ui'];
     if (qiankunLifeCycle) {

+ 2 - 1
server/config/config.go

@@ -93,11 +93,12 @@ func init() {
 
 	authorizeEndpoint := beego.AppConfig.DefaultString("oauth2_authorize_endpoint", "")
 	tokenEndpoint := beego.AppConfig.DefaultString("oauth2_token_endpoint", "")
+	authStyle := beego.AppConfig.DefaultInt("oauth2_auth_style", 1)
 
 	OauthConfig.Endpoint = oauth2.Endpoint{
 		AuthURL:   authorizeEndpoint,
 		TokenURL:  tokenEndpoint,
-		AuthStyle: 0,
+		AuthStyle: oauth2.AuthStyle(authStyle),
 	}
 	OauthConfig.RedirectURL = beego.AppConfig.DefaultString("oauth2_redirect_uri", "")
 	OauthConfig.Scopes = beego.AppConfig.DefaultStrings("oauth2_scopes", []string{})

+ 3 - 2
server/controllers/oauth2.go

@@ -71,13 +71,14 @@ func (c *Oauth2Controller) Callback() {
 	err = json.Unmarshal(content, &user)
 	if err != nil {
 		logs.Error("GetUserinfo Unmarshal", err)
-		c.setCode(-1).setMsg(fmt.Sprintf("登录失败(Unmarshal):%s", err.Error())).json()
-		return
 	}
 	if len(user.Account) == 0 {
 		c.setCode(-1).setMsg("登录失败,请确认userinfo接口返回了account字段").json()
 		return
 	}
+	if len(user.Nickname) == 0 {
+		user.Nickname = user.Account
+	}
 	o := orm.NewOrm()
 	err = o.Read(&user, "Account")
 	if err != nil {

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików