重构客户端引用以使用公共包
- 将 lklsdk.Client 替换为 common.Client - 更新所有服务初始化方法参数类型 - 修改配置字段访问方式从 c.config 到 c.Config - 统一请求方法调用为 DoRequest - 移除重复的 client.go 文件实现 - 调整 trade.go 中 OutOrgCode 的获取路径
This commit is contained in:
@@ -23,7 +23,7 @@ import (
|
||||
|
||||
// Client 拉卡拉SDK客户端
|
||||
type Client[T any] struct {
|
||||
config *Config
|
||||
Config *Config
|
||||
response T
|
||||
ctx context.Context
|
||||
}
|
||||
@@ -36,7 +36,7 @@ func NewClient[T any](ctx context.Context, cfgJson string) *Client[T] {
|
||||
return nil
|
||||
}
|
||||
return &Client[T]{
|
||||
config: config,
|
||||
Config: config,
|
||||
ctx: ctx,
|
||||
}
|
||||
}
|
||||
@@ -57,7 +57,7 @@ func (c *Client[T]) generateSign(request []byte) (string, error) {
|
||||
timestamp := fmt.Sprintf("%d", time.Now().Unix())
|
||||
|
||||
// 构建待签名报文
|
||||
signData := fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n", c.config.AppId, c.config.SerialNo, timestamp, nonceStr, string(request))
|
||||
signData := fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n", c.Config.AppId, c.Config.SerialNo, timestamp, nonceStr, string(request))
|
||||
|
||||
// 计算签名
|
||||
hashed := sha256.Sum256([]byte(signData))
|
||||
@@ -74,12 +74,12 @@ func (c *Client[T]) generateSign(request []byte) (string, error) {
|
||||
|
||||
// 构建Authorization头
|
||||
authorization := fmt.Sprintf("LKLAPI-SHA256withRSA appid=\"%s\",serial_no=\"%s\",timestamp=\"%s\",nonce_str=\"%s\",signature=\"%s\"",
|
||||
c.config.AppId, c.config.SerialNo, timestamp, nonceStr, signatureBase64)
|
||||
c.Config.AppId, c.Config.SerialNo, timestamp, nonceStr, signatureBase64)
|
||||
return authorization, nil
|
||||
}
|
||||
|
||||
func (c *Client[T]) loadPrivateKey() (*rsa.PrivateKey, error) {
|
||||
block, _ := pem.Decode(gfile.GetBytes(c.config.PrivateKey))
|
||||
block, _ := pem.Decode(gfile.GetBytes(c.Config.PrivateKey))
|
||||
if block == nil {
|
||||
return nil, fmt.Errorf("无法解码私钥PEM数据")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user