Это BaseController и Validation для фреймворка Gin.
Он использует govalidator для поддержки валидации параметров запроса. Также предоставляет BaseController, который может объединять другие структуры обработчиков.
Скачайте и установите с помощью go module:
export GO111MODULE=on
go get -u github.com/shuxnhs/gin-validation
Импортируйте его в свой код:
import (
validation "github.com/shuxnhs/gin-validation"
)
Пожалуйста, посмотрите на пример контроллера, и вы можете использовать декларативную проверку параметров для проверки данных запроса.
package main
import (
"github.com/gin-gonic/gin"
validation "github.com/shuxnhs/gin-validation"
"github.com/shuxnhs/gin-validation/formatter"
)
type ExampleController struct {
validation.BaseController
}
func (e *ExampleController) Ping(ctx *gin.Context) {
ruleMap := map[string]formatter.Rule{
"objectId": {"name": "object_id", "type": formatter.ValidTypeInt, "required": true, "rule": "", "default": 123},
"objectName": {"name": "object_name", "type": formatter.ValidTypeString, "required": true,
"rule": "length(1|10),in(string1|string2|...|stringN)"},
}
paramMap := e.Rules(ctx, ruleMap)
if ctx.IsAborted() {
return
}
ctx.JSON(200, paramMap["objectId"])
}
Примечание: часть текста осталась без перевода, так как содержит специальные символы или непечатаемые символы.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )