小编Ans*_*Raj的帖子

如何验证 JSON 输入

我正在使用 Beego 框架在 Go 中构建一个 Web 应用程序。我必须在 API 请求中验证传入的 JSON。

我可以将 JSON 解组为一个工作正常的结构,但我也想验证数据。例如,如果类型与 struct json.Unmarshal 中的类型不匹配,将在第一次出现时返回错误。我想一次验证并获取 JSON 的所有错误。

我已经尝试过,https://github.com/thedevsaddam/govalidator但该包需要对 Beego 控制器中不可用的请求对象的引用。还有其他验证器可以验证结构,但我也想要 json 验证。

编辑:

可以从控制器的上下文对象中找到对 beego 中请求对象的引用,如下所示:

func (this *MainController) Post() {
    fmt.Println(this.Ctx.Request)
}
Run Code Online (Sandbox Code Playgroud)

但是问题仍然与 json unmarshal 相同。如果类型有任何轻微的不匹配, json.unmarshal 会立即恐慌。我也希望能够验证类型。

validation json go beego

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

beego ×1

go ×1

json ×1

validation ×1