0


Go语言项目后端使用gin框架接收前端发送的三种格式数据(form-data,json,Params)

1.后端接收前端发送的JSON数据

1.方法:

使用gin框架的BindJSON方法,将前端的json格式数据将后端的结构体相绑定,从而获取到前端所发送的数据,并返回给前端

2.源代码

package main

import "github.com/gin-gonic/gin"

//测试json数据

func main() {
    r := gin.Default()
    type LoginForm struct {
        Name     string `form:"name" binding:"required"`
        Password string `form:"password" binding:"required"`
    }
    r.POST("/login", func(c *gin.Context) {
        json := LoginForm{}
        //将前端json格式数据与LoginForm对象绑定
        c.BindJSON(&json)
        //将结构体已json格式响应回前端
        c.JSON(200, json)
    })
    r.Run(":8081") // 监听并在 0.0.0.0:8081 上启动服务
}

3.结果展示

1.将前端发送过来的数据全部返回

2.将前端发送过来的json格式数据选择性返回

2.后端接收前端发送的表单数据(form-data)

1.方法:

使用gin框架的PostForm方法,从而获取到前端form格式的参数

2.源代码:

package main

import "github.com/gin-gonic/gin"

//测试form-data

func main() {
    r := gin.Default()
    r.POST("/login", func(c *gin.Context) {
        name := c.PostForm("name")
        c.JSON(200, name)
    })
    r.Run(":8081") // 监听并在 0.0.0.0:8081 上启动服务
}

3.结果展示

3.后端接收前端发送的Params(请求路径中的参数)

1.方法:

使用gin框架中的Params.ByName方法

2.源代码:

package main

import "github.com/gin-gonic/gin"

//测试params

func main() {
    r := gin.Default()
    r.POST("/login/:id", func(c *gin.Context) {
        //获取请求路径中的参数
        id := c.Params.ByName("id")
        c.JSON(200, id)
    })
    r.Run(":8081") // 监听并在 0.0.0.0:8081 上启动服务
}

3.结果展示:

标签: json golang gin

本文转载自: https://blog.csdn.net/pyscl01/article/details/130651584
版权归原作者 Dragon_0010 所有, 如有侵权,请联系我们删除。

“Go语言项目后端使用gin框架接收前端发送的三种格式数据(form-data,json,Params)”的评论:

还没有评论