6
0

feat(sdk): 添加RefererHeader并扩展Client功能

- 在requests包中添加RefererHeader结构体
- 在Client结构中添加SetRefererHeader和GetRefererHeader方法
- 修改msdk客户端初始化时设置RefererHeader
- 在msdk客户端方法中添加RefererHeader到请求头
This commit is contained in:
余 欣怀 2025-07-10 18:05:44 +08:00
parent 6a7beb5497
commit f902dccb54
3 changed files with 35 additions and 1 deletions

View File

@ -46,6 +46,22 @@ type Client struct {
httpProxy string
httpsProxy string
noProxy string
header *requests.RefererHeader
}
func (c *Client) SetRefererHeader(header *requests.RefererHeader) {
c.header = header
}
func (c *Client) GetRefererHeader() map[string]string {
if c.header == nil {
return nil
}
return map[string]string{
"Referer": c.header.Referer,
"Traceparent": c.header.TraceId,
}
}
func (client *Client) GetNoProxy() string {

View File

@ -56,6 +56,11 @@ type Host struct {
Func func(string) string
}
type RefererHeader struct {
Referer string
TraceId string
}
var debug utils.Debug
func init() {
@ -95,6 +100,7 @@ type AcsRequest interface {
GetBodyReader() io.Reader
AddHeaderParam(key, value string)
AddHeaders(headers map[string]string)
addQueryParam(key, value string)
addFormParam(key, value string)
addJsonParam(string, any)
@ -226,6 +232,12 @@ func (request *baseRequest) AddHeaderParam(key, val string) {
request.Headers[key] = val
}
func (request *baseRequest) AddHeaders(headers map[string]string) {
for key, val := range headers {
request.Headers[key] = val
}
}
func (request *baseRequest) addQueryParam(key, val string) {
request.QueryParams[key] = val
}

View File

@ -16,8 +16,10 @@ type Client struct {
sdk.Client
}
func NewClient() (client *Client, err error) {
func NewClient(header ...*requests.RefererHeader) (client *Client, err error) {
header = append(header, nil)
client = &Client{}
client.SetRefererHeader(header[0])
err = client.Init()
return
}
@ -30,6 +32,7 @@ func (c *Client) GetIdfa(req *GetIdfaReq) (resp *GetIdfaResp, err error) {
if req.Imei == "" && req.Idfa != "" {
req.Imei = req.Idfa
}
req.AddHeaders(c.GetRefererHeader())
err = c.DoAction(req, resp)
return
}
@ -39,6 +42,7 @@ func (c *Client) GetUserAttr(req *GetUserAttrReq) (resp *GetUserAttrResp, err er
resp = &GetUserAttrResp{
BaseResponse: &responses.BaseResponse{},
}
req.AddHeaders(c.GetRefererHeader())
err = c.DoAction(req, resp)
return
}
@ -48,6 +52,7 @@ func (c *Client) GetImei(req *GetImeiReq) (resp *GetImeiResp, err error) {
resp = &GetImeiResp{
BaseResponse: &responses.BaseResponse{},
}
req.AddHeaders(c.GetRefererHeader())
err = c.DoAction(req, resp)
return
}
@ -56,6 +61,7 @@ func (c *Client) SetImei(req *SetImeiReq) (resp *SetImeiResp, err error) {
resp = &SetImeiResp{
BaseResponse: &responses.BaseResponse{},
}
req.AddHeaders(c.GetRefererHeader())
err = c.DoAction(req, resp)
return
}