修复 jwt payload解析的错误
This commit is contained in:
@@ -44,7 +44,7 @@ func (l *AcceptCookieLogic) AcceptCookie(req *types.Request, userinfo *auth.User
|
||||
}
|
||||
|
||||
m := l.svcCtx.AllModels.FsGuest
|
||||
token, err := m.GenerateGuestID(l.ctx, &l.svcCtx.Config.Auth.AccessSecret)
|
||||
token, err := m.GenerateGuestID(l.ctx, auth.DefaultJwtSecret)
|
||||
if err != nil {
|
||||
return resp.SetStatus(basic.CodeGuestGenErr)
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
package logic
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"fusenapi/utils/auth"
|
||||
"fusenapi/utils/basic"
|
||||
"log"
|
||||
"fusenapi/utils/wevent"
|
||||
"time"
|
||||
|
||||
"context"
|
||||
@@ -11,6 +12,7 @@ import (
|
||||
"fusenapi/server/auth/internal/svc"
|
||||
"fusenapi/server/auth/internal/types"
|
||||
|
||||
"github.com/474420502/requests"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
@@ -53,7 +55,7 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma
|
||||
// 谷歌平台的注册流程
|
||||
user, err := l.svcCtx.AllModels.FsUser.RegisterByGoogleOAuth(l.ctx, token)
|
||||
if err != nil {
|
||||
logx.Error(err)
|
||||
logx.Error(err, token.TraceId)
|
||||
return resp.SetStatus(basic.CodeDbSqlErr)
|
||||
}
|
||||
|
||||
@@ -67,18 +69,40 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma
|
||||
)
|
||||
|
||||
if err != nil {
|
||||
logx.Error(err)
|
||||
logx.Error(err, token.TraceId)
|
||||
return
|
||||
}
|
||||
|
||||
log.Println(jwtToken) // 通过websocket去, 送回通道
|
||||
event := wevent.NewWebsocketEventSuccess(wevent.UserEmailRegister, token.TraceId)
|
||||
event.Data = wevent.DataEmailRegister{
|
||||
JwtToken: jwtToken,
|
||||
}
|
||||
|
||||
tp := requests.Post(fmt.Sprintf("%s/api/websocket/common_notify", l.svcCtx.Config.MainAddress))
|
||||
tp.SetBodyJson(requests.M{
|
||||
"wid": token.Wid,
|
||||
"data": event,
|
||||
})
|
||||
|
||||
wresp, err := tp.Execute()
|
||||
if err != nil {
|
||||
logx.Error(err, token.TraceId)
|
||||
return
|
||||
}
|
||||
|
||||
result := wresp.Json()
|
||||
if result.Get("code").Int() != 200 {
|
||||
logx.Error(result.Get("message"))
|
||||
return
|
||||
}
|
||||
logx.Info("success", token.TraceId, jwtToken)
|
||||
|
||||
case "facebook":
|
||||
case "fusen":
|
||||
|
||||
user, err := l.svcCtx.AllModels.FsUser.RegisterByFusen(l.ctx, token)
|
||||
if err != nil {
|
||||
logx.Error(err)
|
||||
logx.Error(err, token.TraceId)
|
||||
return resp.SetStatus(basic.CodeDbSqlErr)
|
||||
}
|
||||
|
||||
@@ -92,12 +116,28 @@ func (l *UserEmailConfirmationLogic) UserEmailConfirmation(req *types.RequestEma
|
||||
)
|
||||
|
||||
if err != nil {
|
||||
logx.Error(err)
|
||||
logx.Error(err, token.TraceId)
|
||||
return
|
||||
}
|
||||
|
||||
log.Println(jwtToken)
|
||||
|
||||
event := wevent.NewWebsocketEventSuccess(wevent.UserEmailRegister, token.TraceId)
|
||||
event.Data = wevent.DataEmailRegister{
|
||||
JwtToken: jwtToken,
|
||||
}
|
||||
tp := requests.Post(fmt.Sprintf("%s/api/websocket/common_notify", l.svcCtx.Config.MainAddress))
|
||||
tp.SetBodyJson(requests.M{
|
||||
"wid": token.Wid,
|
||||
"data": event,
|
||||
})
|
||||
wresp, err := tp.Execute()
|
||||
if err != nil {
|
||||
logx.Error(err, token.TraceId)
|
||||
}
|
||||
result := wresp.Json()
|
||||
if result.Get("code").Int() != 200 {
|
||||
logx.Error(result.Get("message"))
|
||||
}
|
||||
logx.Info("success", token.TraceId, jwtToken)
|
||||
}
|
||||
|
||||
default:
|
||||
|
||||
@@ -17,6 +17,7 @@ import (
|
||||
"fusenapi/server/auth/internal/types"
|
||||
|
||||
"github.com/474420502/requests"
|
||||
"github.com/google/uuid"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
"github.com/zeromicro/go-zero/rest/httpx"
|
||||
"golang.org/x/oauth2"
|
||||
@@ -91,9 +92,10 @@ func (l *UserGoogleLoginLogic) UserGoogleLogin(req *types.RequestGoogleLogin, us
|
||||
|
||||
l.registerInfo = &auth.RegisterToken{
|
||||
Id: googleId,
|
||||
Password: base64.URLEncoding.EncodeToString(nonce),
|
||||
Password: base64.RawURLEncoding.EncodeToString(nonce),
|
||||
Platform: "google",
|
||||
OperateType: auth.OpTypeRegister,
|
||||
TraceId: uuid.NewString(),
|
||||
CreateAt: time.Now(),
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import (
|
||||
"fusenapi/server/auth/internal/svc"
|
||||
"fusenapi/server/auth/internal/types"
|
||||
|
||||
"github.com/google/uuid"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
@@ -48,6 +49,7 @@ func (l *UserRegisterLogic) UserRegister(req *types.RequestUserRegister, userinf
|
||||
Email: req.Email,
|
||||
Password: req.Password,
|
||||
Platform: "fusen",
|
||||
TraceId: uuid.NewString(),
|
||||
CreateAt: time.Now(),
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import (
|
||||
"fusenapi/server/auth/internal/svc"
|
||||
"fusenapi/server/auth/internal/types"
|
||||
|
||||
"github.com/google/uuid"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
@@ -51,6 +52,7 @@ func (l *UserResetTokenLogic) UserResetToken(req *types.RequestUserResetToken, u
|
||||
Wid: req.Wid,
|
||||
Email: *user.Email,
|
||||
OldPassword: *user.PasswordHash,
|
||||
TraceId: uuid.NewString(),
|
||||
CreateAt: time.Now(),
|
||||
}
|
||||
|
||||
|
||||
40
server/auth/internal/logic/websocket_test.go
Normal file
40
server/auth/internal/logic/websocket_test.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package logic
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"fusenapi/utils/wevent"
|
||||
"log"
|
||||
"testing"
|
||||
|
||||
"github.com/474420502/requests"
|
||||
"github.com/google/uuid"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
func TestSender(t *testing.T) {
|
||||
traceId := uuid.NewString()
|
||||
event := wevent.NewWebsocketEventSuccess(wevent.UserEmailRegister, traceId)
|
||||
event.Data = wevent.DataEmailRegister{
|
||||
JwtToken: traceId,
|
||||
}
|
||||
|
||||
tp := requests.Post(fmt.Sprintf("%s/api/websocket/common_notify", "https://server.fusen.3718.cn:9900"))
|
||||
tp.SetBodyJson(requests.M{
|
||||
"wid": "tGyMYX9EldtsPLZTyT6PxrRgEV615CQGEiu9Sb1XrjZ4kpTjI46sQyh7kYfVlgN9uR5Uw4KDF+S62IknmaRgSMdee1QHVtCv+VEKrMF76snR04zS1ZbWZCgX5Lv2xgHz/bZBWwJF/9u6YTy2/FetGg==",
|
||||
"data": event,
|
||||
})
|
||||
|
||||
wresp, err := tp.Execute()
|
||||
if err != nil {
|
||||
logx.Error(err, "traceId")
|
||||
return
|
||||
}
|
||||
|
||||
result := wresp.Json()
|
||||
if result.Get("code").Int() != 200 {
|
||||
logx.Error(result.Get("message"))
|
||||
return
|
||||
}
|
||||
log.Println(result)
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user