POST multipart/form-data提交无法获取参数

1. 运行环境

go version go1.17.5 windows/amd64

2. 问题描述?

我发现post表单提交时,如果表单的参数和结构体的参数不一致,就无法获取参数的值:tired_face:

3. 您期望得到的结果?

正常表单提交参数,一般参数为小写字母,没必要和表单结构体参数一致

Summer
最佳答案

这个课程只支持 JSON 数据提交,如果增加 form 提交的字段,就是要在 struct 声明里增加 form:"phone" ,类似:

type SignupPhoneExistRequest struct {
    Phone string `json:"phone,omitempty" form:"phone" valid:"phone"`
}

详见 绑定查询字符串或表单数据

2年前 评论
sreio 1年前
讨论数量: 9
Summer

用户提交数据,皆需严格把控。

『无法获取参数』这个问题,请具体举下例子,或者场景。

2年前 评论
laraverer (楼主) 2年前
Summer

你是说你想支持两种,在 json 的基础上再增加表单数据?

2年前 评论
Summer

这个课程只支持 JSON 数据提交,如果增加 form 提交的字段,就是要在 struct 声明里增加 form:"phone" ,类似:

type SignupPhoneExistRequest struct {
    Phone string `json:"phone,omitempty" form:"phone" valid:"phone"`
}

详见 绑定查询字符串或表单数据

2年前 评论
sreio 1年前

是不是不能支持json嵌套,和数组的验证。如果是,这样很不方便

{
    "file_url": "",
    "options": {
        "rotation": "90"
    }
}
2年前 评论

postman Content-Type 要设置为 application/json,但是上一节没有指定也能正常访问,不知道为什么这个章节一定要设定?

2年前 评论
Tangqy 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!