refactor rest code (#895)

master
Kevin Wan 3 years ago committed by GitHub
parent 28a7c9d38f
commit 54d57c7d4b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -322,12 +322,13 @@ func (u *Unmarshaler) processNamedField(field reflect.StructField, value reflect
if err != nil {
return err
}
k := key
fullName = join(fullName, key)
canonicalKey := key
if u.opts.canonicalKey != nil {
k = u.opts.canonicalKey(key)
canonicalKey = u.opts.canonicalKey(key)
}
fullName = join(fullName, key)
mapValue, hasValue := getValue(m, k)
mapValue, hasValue := getValue(m, canonicalKey)
if hasValue {
return u.processNamedFieldWithValue(field, value, mapValue, key, opts, fullName)
}

@ -24,7 +24,8 @@ const (
var (
formUnmarshaler = mapping.NewUnmarshaler(formKey, mapping.WithStringValues())
pathUnmarshaler = mapping.NewUnmarshaler(pathKey, mapping.WithStringValues())
headerUnmarshaler = mapping.NewUnmarshaler(headerKey, mapping.WithStringValues(), mapping.WithCanonicalKeyFunc(textproto.CanonicalMIMEHeaderKey))
headerUnmarshaler = mapping.NewUnmarshaler(headerKey, mapping.WithStringValues(),
mapping.WithCanonicalKeyFunc(textproto.CanonicalMIMEHeaderKey))
)
// Parse parses the request.

Loading…
Cancel
Save