Gin 响应方式

gin,响应,方式 · 浏览次数 : 16

小编点评

**字符串方式** ```go ctx.String(http.StatusOK, "this is a %s", "ms string response") ``` **JSON方式** ```go ctx.JSON(http.StatusOK, gin.H{ "success": true, }) ``` **XML方式** ```go type XmlUser struct { Id int64 `xml:\"id\"` Name string `xml:\"name\"`} } ctx.XML(http.StatusOK, u) ``` **文件格式** ```go ctx.File("1.png") ctx.FileAttachment("1.png", "2.png") ``` **设置http响应头** ```go ctx.Header("test", "headertest") ``` **重定向** ```go ctx.Redirect(http.StatusMovedPermanently, "http://www.baidu.com") ``` **YAML方式** ```go ctx.YAML(200, gin.H{"name": "ms", "age": 19}) ```

正文

响应

1. 字符串方式

r.GET("/user/save", func(ctx *gin.Context) {
    ctx.String(http.StatusOK, "this is a %s", "ms string response")
})

2. JSON方式

r.GET("/user/save", func (ctx *gin.Context) {
    ctx.JSON(http.StatusOK, gin.H{
        "success": true,
    })
})

3. XML方式

type XmlUser struct {
    Id   int64  `xml:"id"`
    Name string `xml:"name"`
}
r.GET("/user/save", func (ctx *gin.Context) {
    u := XmlUser{
        Id:   11,
        Name: "zhangsan",
    }
    ctx.XML(http.StatusOK, u)
})

4. 文件格式

r.GET("/user/save", func (ctx *gin.Context) {
    //ctx.File("./1.png")
    ctx.FileAttachment("./1.png", "2.png")
})

5. 设置http响应头

r.GET("/user/save", func(ctx *gin.Context) {
    ctx.Header("test", "headertest")
})

6. 重定向

r.GET("/user/save", func(ctx *gin.Context) {
    ctx.Redirect(http.StatusMovedPermanently, "http://www.baidu.com")
})

7. YAML方式

r.GET("/user/save", func(ctx *gin.Context) {
    ctx.YAML(200, gin.H{"name": "ms", "age": 19})
})

 

与Gin 响应方式相似的内容:

Gin 响应方式

响应 1. 字符串方式 r.GET("/user/save", func(ctx *gin.Context) { ctx.String(http.StatusOK, "this is a %s", "ms string response") }) 2. JSON方式 r.GET("/user/sav

Gin中间件开发

Gin是一个用Go语言编写的Web框架,它提供了一种简单的方式来创建HTTP路由和处理HTTP请求。中间件是Gin框架中的一个重要概念,它可以用来处理HTTP请求和响应,或者在处理请求之前和之后执行一些操作。 以下是关于Gin中间件开发的一些基本信息: - **中间件的定义**:在Gin中,中间件是

Gin 中间件

中间件 在Gin框架中,中间件(Middleware)指的是可以拦截http请求-响应生命周期的特殊函数,在请求-响应生命周期中可以注册多个中间件,每个中间件执行不同的功能,一个中间执行完再轮到下一个中间件执行。 中间件的常见应用场景如下: 请求限速 api接口签名处理 权限校验 统一错误处理 Gi

Gin 框架的执行流程

Gin框架是一个用Go语言编写的高性能Web框架,它基于httprouter实现,具有快速、简洁和高效的特性。 以下是Gin框架处理HTTP请求的大致执行流程: 1 初始化Gin引擎: 用户创建一个新的gin.Engine实例,这通常是应用程序的主路由器。 用户定义路由,这些路由是通过engine.

Gin 框架是怎么使用 net http 包的(gin.go)

Gin 框架是基于 Go 语言的标准库 net/http 构建的,它使用 net/http 提供的基础功能来构建自己的高性能 Web 应用框架。 具体来说,Gin 使用 net/http 的以下方面: 1,HandlerFunc: Gin 使用 net/http 的 HandlerFunc 类型,这

Gin 获取请求参数

1、获取URL?后的参数(不区分请求方式) // 获取请求url ? 后的参数(url:8080/add?name=kelvin) func GetUrlParam(ctx *gin.Context) { name := ctx.Query("name") defaultName := ctx.De

gin启动https支持

gin是一个使用Go语言开发的Web框架,具有运行速度快,分组的路由器,良好的崩溃捕获和错误处理,支持中间件等。 在工作中有时候需要支持https服务,gin可以通过中间件的方式来提供对https的支持,这里使用的是secure来提供https服务支持。这里给出一个简单的使用示例: 示例代码 pac

[golang]在Gin框架中使用JWT鉴权

什么是JWT JWT,全称 JSON Web Token,是一种开放标准(RFC 7519),用于安全地在双方之间传递信息。尤其适用于身份验证和授权场景。JWT 的设计允许信息在各方之间安全地、 compactly(紧凑地)传输,因为其自身包含了所有需要的认证信息,从而减少了需要查询数据库或会话存储

validator库在gin中的使用

目录封装语言包翻译器tag中设置验证规则控制层验curl请求返回结果 封装语言包翻译器 package validator import ( "fmt" "net/http" "reflect" "github.com/go-playground/locales/zh_Hans_CN" unTran

PHP转Go系列 | ThinkPHP与Gin框架之OpenApi授权设计实践

工作中只要接触过第三方开放平台的都离不开 OpenApi,几乎各大平台都会有自己的 OpenApi 比如微信、淘宝、京东、抖音等。在 OpenApi 对接的过程中最首要的环节就是授权,获取到平台的授权 Token 至关重要。