the zone priority in params is higher than zone in config

This commit is contained in:
cygnushan 2019-08-06 14:59:15 +08:00
parent 29d7bdf768
commit 6b9920402b
1 changed files with 10 additions and 6 deletions

View File

@ -239,10 +239,12 @@ func (b *Builder) parseRequestURL() error {
b.parsedURL = endpoint + requestURI b.parsedURL = endpoint + requestURI
if b.parsedParams != nil && b.operation.RequestMethod == "GET" { if b.parsedParams != nil && b.operation.RequestMethod == "GET" {
if _, ok := (*b.parsedParams)["zone"]; !ok {
zone := (*b.parsedProperties)["zone"] zone := (*b.parsedProperties)["zone"]
if zone != "" { if zone != "" {
(*b.parsedParams)["zone"] = zone (*b.parsedParams)["zone"] = zone
} }
}
paramsParts := []string{} paramsParts := []string{}
for key, value := range *b.parsedParams { for key, value := range *b.parsedParams {
paramsParts = append(paramsParts, fmt.Sprintf("%s=%s", key, url.QueryEscape(value))) paramsParts = append(paramsParts, fmt.Sprintf("%s=%s", key, url.QueryEscape(value)))
@ -260,10 +262,12 @@ func (b *Builder) parseRequestURL() error {
func (b *Builder) parseRequestForm() error { func (b *Builder) parseRequestForm() error {
if b.parsedParams != nil && b.operation.RequestMethod == "POST" { if b.parsedParams != nil && b.operation.RequestMethod == "POST" {
var values = make(url.Values) var values = make(url.Values)
if _, ok := (*b.parsedParams)["zone"]; !ok {
zone := (*b.parsedProperties)["zone"] zone := (*b.parsedProperties)["zone"]
if zone != "" { if zone != "" {
(*b.parsedParams)["zone"] = zone (*b.parsedParams)["zone"] = zone
} }
}
for key, value := range *b.parsedParams { for key, value := range *b.parsedParams {
values.Set(key, value) values.Set(key, value)
} }