feat 添加默认初始化方法
This commit is contained in:
parent
85e6bb8a8e
commit
a19977d88f
19
client.go
19
client.go
@ -1,11 +1,30 @@
|
|||||||
package dw_sdk
|
package dw_sdk
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
)
|
||||||
|
|
||||||
type Client struct {
|
type Client struct {
|
||||||
articleServiceClient ArticleServiceClient
|
articleServiceClient ArticleServiceClient
|
||||||
consignBidClient BidClient
|
consignBidClient BidClient
|
||||||
preSaleBidClient BidClient
|
preSaleBidClient BidClient
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func InitDefaultDWClient() (*Client, error) {
|
||||||
|
path := os.Getenv(ConfigPathEnvKey)
|
||||||
|
if path == "" {
|
||||||
|
path = DefaultConfigPath
|
||||||
|
}
|
||||||
|
cfg, err := LoadDWConfig(path)
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("获取得物配置失败:%v", err)
|
||||||
|
}
|
||||||
|
cli := NewClient(*cfg)
|
||||||
|
|
||||||
|
return cli, nil
|
||||||
|
}
|
||||||
|
|
||||||
func NewClient(cfg Config) *Client {
|
func NewClient(cfg Config) *Client {
|
||||||
return &Client{
|
return &Client{
|
||||||
articleServiceClient: NewArticleServiceClient(cfg),
|
articleServiceClient: NewArticleServiceClient(cfg),
|
||||||
|
23
config.go
23
config.go
@ -1,5 +1,11 @@
|
|||||||
package dw_sdk
|
package dw_sdk
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
|
||||||
|
"gopkg.in/yaml.v3"
|
||||||
|
)
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
Public PublicConfig `json:"public" yaml:"public"`
|
Public PublicConfig `json:"public" yaml:"public"`
|
||||||
Proxy *ProxyConfig `json:"proxy,omitempty" yaml:"proxy,omitempty"`
|
Proxy *ProxyConfig `json:"proxy,omitempty" yaml:"proxy,omitempty"`
|
||||||
@ -17,3 +23,20 @@ type ProxyConfig struct {
|
|||||||
User string `json:"user" yaml:"user"`
|
User string `json:"user" yaml:"user"`
|
||||||
Pass string `json:"pass" yaml:"pass"`
|
Pass string `json:"pass" yaml:"pass"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
// 默认的数据库配置文件路径
|
||||||
|
DefaultConfigPath = "/cfg/dw.yaml"
|
||||||
|
// 数据库配置文件路径环境变量
|
||||||
|
ConfigPathEnvKey = "DW_CONFIG_PATH"
|
||||||
|
)
|
||||||
|
|
||||||
|
func LoadDWConfig(path string) (*Config, error) {
|
||||||
|
f, err := os.Open(path)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer f.Close()
|
||||||
|
var opt Config
|
||||||
|
return &opt, yaml.NewDecoder(f).Decode(&opt)
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user