mirror of
https://github.com/gin-gonic/gin.git
synced 2025-10-16 21:32:11 +08:00
By passing the Gin context to bindings, custom validators can take advantage of the information in the context.
25 lines
600 B
Go
25 lines
600 B
Go
// Copyright 2018 Gin Core Team. All rights reserved.
|
|
// Use of this source code is governed by a MIT style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package binding
|
|
|
|
import "context"
|
|
|
|
type uriBinding struct{}
|
|
|
|
func (uriBinding) Name() string {
|
|
return "uri"
|
|
}
|
|
|
|
func (b uriBinding) BindUri(m map[string][]string, obj interface{}) error {
|
|
return b.BindUriContext(context.Background(), m, obj)
|
|
}
|
|
|
|
func (uriBinding) BindUriContext(ctx context.Context, m map[string][]string, obj interface{}) error {
|
|
if err := mapURI(obj, m); err != nil {
|
|
return err
|
|
}
|
|
return validateContext(ctx, obj)
|
|
}
|