阿里云万网域名关键词优化排名软件
news/
2025/10/4 18:27:53/
文章来源:
阿里云万网域名,关键词优化排名软件,手机网站建设品牌好,app在线开发网站建设1. Json 数据解析和绑定
客户端传参#xff0c;后端接收并解析到结构体
package mainimport (github.com/gin-gonic/ginnet/http
)// 定义接收数据的结构体
type Login struct {// binding:required修饰的字段#xff0c;若接收为空值…1. Json 数据解析和绑定
客户端传参后端接收并解析到结构体
package mainimport (github.com/gin-gonic/ginnet/http
)// 定义接收数据的结构体
type Login struct {// binding:required修饰的字段若接收为空值则报错是必须字段User string form:username json:user uri:user xml:user binding:requiredPssword string form:password json:password uri:password xml:password binding:required
}func main() {// 1.创建路由// 默认使用了2个中间件Logger(), Recovery()r : gin.Default()// JSON绑定r.POST(loginJSON, func(c *gin.Context) {// 声明接收的变量var json Login// 将request的body中的数据自动按照json格式解析到结构体if err : c.ShouldBindJSON(json); err ! nil {// 返回错误信息// gin.H封装了生成json数据的工具c.JSON(http.StatusBadRequest, gin.H{error: err.Error()})return}// 判断用户名密码是否正确if json.User ! root || json.Pssword ! admin {c.JSON(http.StatusBadRequest, gin.H{status: 304})return}c.JSON(http.StatusOK, gin.H{status: 200})})r.Run(:8000)
}2. 表单数据解析和绑定
!DOCTYPE html
html langen
headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0meta http-equivX-UA-Compatible contentieedgetitleDocument/title
/head
bodyform actionhttp://localhost:8000/loginForm methodpost enctypeapplication/x-www-form-urlencoded用户名input typetext nameusernamebr密码input typepassword namepasswordinput typesubmit value提交/form
/body
/htmlpackage mainimport (net/httpgithub.com/gin-gonic/gin
)// 定义接收数据的结构体
type Login struct {// binding:required修饰的字段若接收为空值则报错是必须字段User string form:username json:user uri:user xml:user binding:requiredPssword string form:password json:password uri:password xml:password binding:required
}func main() {// 1.创建路由// 默认使用了2个中间件Logger(), Recovery()r : gin.Default()// JSON绑定r.POST(/loginForm, func(c *gin.Context) {// 声明接收的变量var form Login// Bind()默认解析并绑定form格式// 根据请求头中content-type自动推断if err : c.Bind(form); err ! nil {c.JSON(http.StatusBadRequest, gin.H{error: err.Error()})return}// 判断用户名密码是否正确if form.User ! root || form.Pssword ! admin {c.JSON(http.StatusBadRequest, gin.H{status: 304})return}c.JSON(http.StatusOK, gin.H{status: 200})})r.Run(:8000)
}3. URI数据解析和绑定
package mainimport (net/httpgithub.com/gin-gonic/gin
)// 定义接收数据的结构体
type Login struct {// binding:required修饰的字段若接收为空值则报错是必须字段User string form:username json:user uri:user xml:user binding:requiredPssword string form:password json:password uri:password xml:password binding:required
}func main() {// 1.创建路由// 默认使用了2个中间件Logger(), Recovery()r : gin.Default()// JSON绑定r.GET(/:user/:password, func(c *gin.Context) {// 声明接收的变量var login Login// Bind()默认解析并绑定form格式// 根据请求头中content-type自动推断if err : c.ShouldBindUri(login); err ! nil {c.JSON(http.StatusBadRequest, gin.H{error: err.Error()})return}// 判断用户名密码是否正确if login.User ! root || login.Pssword ! admin {c.JSON(http.StatusBadRequest, gin.H{status: 304})return}c.JSON(http.StatusOK, gin.H{status: 200})})r.Run(:8000)
}参考文章
https://www.fansimao.com/928784.html
https://www.fansimao.com/928797.html
https://www.fansimao.com/928805.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/927424.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!