fix req.Header must merge other Header
This commit is contained in:
parent
13dfdee51c
commit
4b77382218
15
workflow.go
15
workflow.go
|
@ -110,6 +110,7 @@ func (wf *Workflow) SetURLQuery(query url.Values) *Workflow {
|
|||
if query == nil {
|
||||
return wf
|
||||
}
|
||||
query = (url.Values)(mergeMapList(wf.session.Query, query))
|
||||
wf.ParsedURL.RawQuery = query.Encode()
|
||||
return wf
|
||||
}
|
||||
|
@ -153,11 +154,9 @@ func (wf *Workflow) SetURLRawPath(path string) *Workflow {
|
|||
return wf
|
||||
}
|
||||
|
||||
// SetBodyParams 参数设晚上
|
||||
// SetBodyParams 参数设置
|
||||
func (wf *Workflow) SetBodyParams(params ...interface{}) *Workflow {
|
||||
if params == nil {
|
||||
return wf
|
||||
}
|
||||
if params != nil {
|
||||
|
||||
plen := len(params)
|
||||
defaultContentType := TypeURLENCODED
|
||||
|
@ -174,6 +173,7 @@ func (wf *Workflow) SetBodyParams(params ...interface{}) *Workflow {
|
|||
// TODO: form-data
|
||||
createMultipart(wf.Body, params)
|
||||
} else {
|
||||
|
||||
var values url.Values
|
||||
switch param := params[0].(type) {
|
||||
case map[string]string:
|
||||
|
@ -190,7 +190,10 @@ func (wf *Workflow) SetBodyParams(params ...interface{}) *Workflow {
|
|||
case []byte:
|
||||
wf.Body.IOBody = param
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return wf
|
||||
}
|
||||
|
||||
|
@ -226,7 +229,7 @@ func mergeMapList(header1, header2 map[string][]string) map[string][]string {
|
|||
if mergeValue, ok := merged[key]; ok {
|
||||
merged[key] = append(mergeValue, v)
|
||||
} else {
|
||||
merged[key] = append(mergeValue, v)
|
||||
merged[key] = []string{v}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -236,7 +239,7 @@ func mergeMapList(header1, header2 map[string][]string) map[string][]string {
|
|||
|
||||
// setHeaderRequest 设置request的头
|
||||
func setHeaderRequest(req *http.Request, wf *Workflow) {
|
||||
req.Header = mergeMapList(wf.session.Header, wf.Header)
|
||||
req.Header = mergeMapList(req.Header, mergeMapList(wf.session.Header, wf.Header))
|
||||
}
|
||||
|
||||
// setHeaderRequest 设置request的临时Cookie, 永久需要在session上设置cookie
|
||||
|
|
Loading…
Reference in New Issue
Block a user