完善clientToken
This commit is contained in:
parent
ed1125c6dd
commit
b231112030
@ -20,7 +20,7 @@ type DciProvider struct {
|
||||
func (d *DciProvider) GetUploadUrl(_ context.Context, req *dci.GetUploadUrlRequest) (res *dci.GetUploadUrlResponse, err error) {
|
||||
res = new(dci.GetUploadUrlResponse)
|
||||
if req.FileName == "" {
|
||||
return res, errCommon.ReturnError(errors.New(msg.ErrrFileIsEmpty), msg.ErrrFileIsEmpty, "未获取到相关文件 :")
|
||||
return res, errCommon.ReturnError(errors.New(msg.ErrFileIsEmpty), msg.ErrFileIsEmpty, "未获取到相关文件 :")
|
||||
}
|
||||
|
||||
res, err = d.file.Upload(req)
|
||||
|
@ -31,13 +31,11 @@ type IDci interface {
|
||||
type Dci struct {
|
||||
}
|
||||
|
||||
func createToken(appID, appKey, channelId, userID, nonce string, timestamp int64) (token string, err error) {
|
||||
func createToken(timestamp int64, keyword ...string) (token string, err error) {
|
||||
var b bytes.Buffer
|
||||
b.WriteString(appID)
|
||||
b.WriteString(appKey)
|
||||
b.WriteString(channelId)
|
||||
b.WriteString(userID)
|
||||
b.WriteString(nonce)
|
||||
for i := 0; i < len(keyword); i++ {
|
||||
b.WriteString(keyword[i])
|
||||
}
|
||||
b.WriteString(fmt.Sprint(timestamp))
|
||||
h := sha256.New()
|
||||
|
||||
|
@ -3,8 +3,11 @@ package logic
|
||||
import (
|
||||
"chain-dci/pb/dci"
|
||||
"chain-dci/pkg/app"
|
||||
errCommon "chain-dci/pkg/err"
|
||||
"chain-dci/pkg/msg"
|
||||
bccrClient "github.com/antchain-openapi-sdk-go/bccr/client"
|
||||
"github.com/jinzhu/copier"
|
||||
"time"
|
||||
)
|
||||
|
||||
type IDciRegistration interface {
|
||||
@ -27,6 +30,12 @@ func (r *DciRegistration) CreateDciRegistration(req *dci.CreateDciRegistrationRe
|
||||
createDciRegistrationRequest := new(bccrClient.CreateDciRegistrationRequest)
|
||||
_ = copier.CopyWithOption(&createDciRegistrationRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DciContentId, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
createDciRegistrationRequest.SetClientToken(clientToken)
|
||||
|
||||
createDciPreregistrationResponse, err := app.ModuleClients.BccrClient.CreateDciRegistration(createDciRegistrationRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -61,6 +70,12 @@ func (r *DciRegistration) GetDciPayUrl(req *dci.GetDciPayUrlRequest) (res *dci.G
|
||||
getDciPayUrlRequest := new(bccrClient.GetDciPayurlRequest)
|
||||
_ = copier.CopyWithOption(&getDciPayUrlRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DigitalRegisterId, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
getDciPayUrlRequest.SetClientToken(clientToken)
|
||||
|
||||
getDciPayUrlResponse, err := app.ModuleClients.BccrClient.GetDciPayurl(getDciPayUrlRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -95,6 +110,12 @@ func (r *DciRegistration) GetDciRegistrationcert(req *dci.GetDciRegistrationcert
|
||||
getDciRegistrationcertRequest := new(bccrClient.GetDciRegistrationcertRequest)
|
||||
_ = copier.CopyWithOption(&getDciRegistrationcertRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DigitalRegisterId, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
getDciRegistrationcertRequest.SetClientToken(clientToken)
|
||||
|
||||
getDciRegistrationcertResponse, err := app.ModuleClients.BccrClient.GetDciRegistrationcert(getDciRegistrationcertRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -112,6 +133,12 @@ func (r *DciRegistration) RetryDciRegistration(req *dci.RetryDciRegistrationRequ
|
||||
retryDciRegistrationRequest := new(bccrClient.RetryDciRegistrationRequest)
|
||||
_ = copier.CopyWithOption(&retryDciRegistrationRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DigitalRegisterId, req.DciContentId, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
retryDciRegistrationRequest.SetClientToken(clientToken)
|
||||
|
||||
retryDciRegistrationResponse, err := app.ModuleClients.BccrClient.RetryDciRegistration(retryDciRegistrationRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -129,6 +156,12 @@ func (r *DciRegistration) CloseDciRegistration(req *dci.CloseDciRegistrationRequ
|
||||
closeDciRegistrationRequest := new(bccrClient.CloseDciRegistrationRequest)
|
||||
_ = copier.CopyWithOption(&closeDciRegistrationRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DigitalRegisterId, req.Name, req.MobileNo, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
closeDciRegistrationRequest.SetClientToken(clientToken)
|
||||
|
||||
closeDciRegistrationResponse, err := app.ModuleClients.BccrClient.CloseDciRegistration(closeDciRegistrationRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -3,8 +3,11 @@ package logic
|
||||
import (
|
||||
"chain-dci/pb/dci"
|
||||
"chain-dci/pkg/app"
|
||||
errCommon "chain-dci/pkg/err"
|
||||
"chain-dci/pkg/msg"
|
||||
bccrClient "github.com/antchain-openapi-sdk-go/bccr/client"
|
||||
"github.com/jinzhu/copier"
|
||||
"time"
|
||||
)
|
||||
|
||||
type IDciUser interface {
|
||||
@ -23,6 +26,12 @@ func (u *DciUser) AddDciUser(req *dci.AddDciUserRequest) (res *dci.AddDciUserRes
|
||||
addDciUserRequest := new(bccrClient.AddDciUserRequest)
|
||||
_ = copier.CopyWithOption(&addDciUserRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.CertName, req.CertificateNumber, req.Phone, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
addDciUserRequest.SetClientToken(clientToken)
|
||||
|
||||
addDciUserResponse, err := app.ModuleClients.BccrClient.AddDciUser(addDciUserRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -40,6 +49,12 @@ func (u *DciUser) UpdateDciUser(req *dci.UpdateDciUserRequest) (res *dci.UpdateD
|
||||
updateDciUserRequest := new(bccrClient.UpdateDciUserRequest)
|
||||
_ = copier.CopyWithOption(&updateDciUserRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DciUserId, req.CertFrontFileId, req.CertBackFileId, req.Phone, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
updateDciUserRequest.SetClientToken(clientToken)
|
||||
|
||||
updateDciUserResponse, err := app.ModuleClients.BccrClient.UpdateDciUser(updateDciUserRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -3,8 +3,11 @@ package logic
|
||||
import (
|
||||
"chain-dci/pb/dci"
|
||||
"chain-dci/pkg/app"
|
||||
errCommon "chain-dci/pkg/err"
|
||||
"chain-dci/pkg/msg"
|
||||
bccrClient "github.com/antchain-openapi-sdk-go/bccr/client"
|
||||
"github.com/jinzhu/copier"
|
||||
"time"
|
||||
)
|
||||
|
||||
type IDciWork interface {
|
||||
@ -22,6 +25,12 @@ func (w *DciWork) CreateDciPreregistration(req *dci.CreateDciPreregistrationRequ
|
||||
createDciPreregistrationRequest := new(bccrClient.CreateDciPreregistrationRequest)
|
||||
_ = copier.CopyWithOption(&createDciPreregistrationRequest, req, copier.Option{DeepCopy: true})
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), req.DciUserId, req.WorkName, req.AuthorName, req.WorkFileId, app.ModuleClients.SfNode.Generate().Base64())
|
||||
if err != nil {
|
||||
return nil, errCommon.ReturnError(err, msg.ErrCreateToken, "创建CreateToken 失败: ")
|
||||
}
|
||||
createDciPreregistrationRequest.SetClientToken(clientToken)
|
||||
|
||||
createDciPreregistrationResponse, err := app.ModuleClients.BccrClient.CreateDciPreregistration(createDciPreregistrationRequest)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -10,6 +10,7 @@ import (
|
||||
bccrClient "github.com/antchain-openapi-sdk-go/bccr/client"
|
||||
"github.com/jinzhu/copier"
|
||||
"strings"
|
||||
"time"
|
||||
"unicode"
|
||||
)
|
||||
|
||||
@ -65,6 +66,9 @@ func (f *File) Upload(req *dci.GetUploadUrlRequest) (res *dci.GetUploadUrlRespon
|
||||
getUploadUrlRequest.SetFileName(fileName)
|
||||
}
|
||||
|
||||
clientToken, err := createToken(time.Now().UnixMilli(), fileName, app.ModuleClients.SfNode.Generate().Base64())
|
||||
getUploadUrlRequest.SetClientToken(clientToken)
|
||||
|
||||
getUploadUrlResponse := GetUploadUrl(getUploadUrlRequest)
|
||||
//res = serializer.UploadUrlResponseToRpc(getUploadUrlResponse)
|
||||
res = new(dci.GetUploadUrlResponse)
|
||||
|
27
pkg/cache/redis.go
vendored
27
pkg/cache/redis.go
vendored
@ -1,27 +1,24 @@
|
||||
package cache
|
||||
|
||||
import (
|
||||
dciConfig "chain-dci/config"
|
||||
"github.com/dubbogo/gost/log/logger"
|
||||
"github.com/go-redis/redis"
|
||||
"github.com/google/wire"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
var RedisProvider = wire.NewSet(NewRedis)
|
||||
|
||||
// TODO 添加连接池
|
||||
func NewRedis() *redis.Client {
|
||||
redisDb, _ := strconv.Atoi(dciConfig.Data.Redis.DB)
|
||||
RedisClient := redis.NewClient(&redis.Options{
|
||||
Addr: dciConfig.Data.Redis.Addr,
|
||||
Password: dciConfig.Data.Redis.Password,
|
||||
DB: redisDb,
|
||||
})
|
||||
_, err := RedisClient.Ping().Result()
|
||||
if err != nil {
|
||||
logger.Errorf("connRedis err", err)
|
||||
panic(err)
|
||||
}
|
||||
return RedisClient
|
||||
//redisDb, _ := strconv.Atoi(dciConfig.Data.Redis.DB)
|
||||
//RedisClient := redis.NewClient(&redis.Options{
|
||||
// Addr: dciConfig.Data.Redis.Addr,
|
||||
// Password: dciConfig.Data.Redis.Password,
|
||||
// DB: redisDb,
|
||||
//})
|
||||
//_, err := RedisClient.Ping().Result()
|
||||
//if err != nil {
|
||||
// logger.Errorf("connRedis err", err)
|
||||
// panic(err)
|
||||
//}
|
||||
return nil
|
||||
}
|
||||
|
@ -1,18 +1,16 @@
|
||||
package db
|
||||
|
||||
import (
|
||||
dciConfig "chain-dci/config"
|
||||
"github.com/google/wire"
|
||||
"gorm.io/gorm"
|
||||
"strings"
|
||||
)
|
||||
|
||||
var MeetingProvider = wire.NewSet(NewDci)
|
||||
var DciProvider = wire.NewSet(NewDci)
|
||||
|
||||
func NewDci() *gorm.DB {
|
||||
connOaMeeting := strings.Join([]string{dciConfig.Data.ChainDci.User, ":", dciConfig.Data.ChainDci.Password,
|
||||
"@tcp(", dciConfig.Data.ChainDci.Host, ":", dciConfig.Data.ChainDci.Port, ")/",
|
||||
dciConfig.Data.ChainDci.DbName, "?charset=utf8mb4&parseTime=true"}, "")
|
||||
DbOaMeeting := loadMysqlConn(connOaMeeting)
|
||||
return DbOaMeeting
|
||||
//connOaMeeting := strings.Join([]string{dciConfig.Data.ChainDci.User, ":", dciConfig.Data.ChainDci.Password,
|
||||
// "@tcp(", dciConfig.Data.ChainDci.Host, ":", dciConfig.Data.ChainDci.Port, ")/",
|
||||
// dciConfig.Data.ChainDci.DbName, "?charset=utf8mb4&parseTime=true"}, "")
|
||||
//DbOaMeeting := loadMysqlConn(connOaMeeting)
|
||||
return nil
|
||||
}
|
||||
|
@ -1,7 +1,5 @@
|
||||
package common
|
||||
|
||||
import "chain-dci/pkg/db"
|
||||
|
||||
func Init() {
|
||||
db.DBMigration()
|
||||
//db.DBMigration()
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package msg
|
||||
|
||||
const (
|
||||
ErrrFileIsEmpty = "未获取到相关文件"
|
||||
ErrFileIsEmpty = "未获取到相关文件"
|
||||
ErrCreateToken = "创建CreateToken失败"
|
||||
)
|
||||
|
@ -26,6 +26,11 @@ func NewSf() *snowflake.Node {
|
||||
}
|
||||
return node
|
||||
}
|
||||
func GenID() int64 {
|
||||
|
||||
func GenIDInt64() int64 {
|
||||
return app.ModuleClients.SfNode.Generate().Int64()
|
||||
}
|
||||
|
||||
func GetIDBase64() string {
|
||||
return app.ModuleClients.SfNode.Generate().Base64()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user