You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.1 KiB
Go
43 lines
1.1 KiB
Go
package model
|
|
|
|
import (
|
|
"github.com/mizuki1412/go-core-kit/service/configkit"
|
|
"reflect"
|
|
)
|
|
|
|
// Header WMS-ZJ通用Header
|
|
type Header struct {
|
|
ContentType string `map:"Content-Type"`
|
|
Cookie string `map:"Cookie"`
|
|
UserAgent string `map:"User-Agent"`
|
|
}
|
|
|
|
func NewHeader() *Header {
|
|
header := new(Header)
|
|
header.ContentType = "application/x-www-form-urlencoded; charset=UTF-8"
|
|
header.Cookie = "JSESSIONID=" + configkit.GetString("wms.token", "")
|
|
header.UserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36"
|
|
return header
|
|
}
|
|
|
|
func (th *Header) GenReqParam() map[string]string {
|
|
return th.structToMap()
|
|
}
|
|
|
|
func (th *Header) structToMap() map[string]string {
|
|
result := make(map[string]string)
|
|
t := reflect.TypeOf(*th)
|
|
v := reflect.ValueOf(*th)
|
|
for i := 0; i < t.NumField(); i++ {
|
|
field := t.Field(i)
|
|
value := v.Field(i)
|
|
// Use the tag value as the key in the map, if it exists; otherwise, use the field name.
|
|
tag := field.Tag.Get("map")
|
|
if tag == "" {
|
|
tag = field.Name
|
|
}
|
|
result[tag] = value.String()
|
|
}
|
|
return result
|
|
}
|