gin 接收表单数据,curl请求接口

1.首先定义一个接收数据的结构体

type Login struct {
    Phone                  string             `form:"phone" json:"phone" binding:"required"`
    RealName               string             `form:"realName" json:"realName" binding:"required"`
    SocialSecurity         string             `form:"socialSecurity" json:"socialSecurity" binding:"required"`
    House                  string             `form:"house" json:"house" binding:"required"`
    AccumulationFound      string             `form:"accumulationFound" json:"accumulationFound" binding:"required"`
    Cart                   string             `form:"cart" json:"cart" binding:"required"`
    CommercialInsurance    string             `form:"commercialInsurance" json:"commercialInsurance" binding:"required"`
    City                   string             `form:"city" json:"city" binding:"required"`
    Weili                  string             `form:"weili" json:"weili" binding:"required"`
    ApplyAmount            string             `form:"applyAmount" json:"applyAmount" binding:"required"`
    Channel                string             `form:"channel" json:"channel" binding:"required"`
    Source                 string             `form:"Source" json:"Source" binding:"required"`
    Sex                    string             `form:"sex" json:"sex" binding:"required"`
    Age                    string             `form:"age" json:"age" binding:"required"`
}

var data Login
if err := c.MustBindWith(&data,binding.Form);err !=nil{
    c.JSON(http.StatusBadRequest,gin.H{"error":err.Error()})
}

2.接收数据放到结构体data  

设置请求参数 

postValue := url2.Values{

    "phone":{data.Phone},
    "realName":{data.RealName},
    "socialSecurity":{data.SocialSecurity},
    "house":{data.House},
    "accumulationFound":{data.AccumulationFound},
    "cart":{data.Cart},
    "commercialInsurance":{data.CommercialInsurance},
    "city":{data.City},
    "weili":{data.Weili},
    "applyAmount":{data.ApplyAmount},
    "channel":{data.Channel},
    "Source":{data.Source},
    "age":{data.Age},
}

client := &http.Client{Timeout: 5 * time.Second}
resp,err :=client.Post(url,"application/x-www-form-urlencoded",strings.NewReader(postValue.Encode()))

postValue.Encode()  

Source=zm001&accumulationFound=2&age=43&applyAmount=50000&cart=1&channel=345&city=%E5%8C%97%E4%BA%AC&commercialInsurance=1&house=2&phone=13896298876&realName=%E6%9D%8E%E6%B5%8B%E8%AF%95&socialSecurity=2&weili=4

不知道为什么go是这种写法

接口代码是PHP  ,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值