gin中*gin.Context的JSON方法


gin中*gin.Context的JSON方法的使用

首先看這個方法,接收一個int類型的狀態碼和一個任意類型的obj

第二個參數傳結構體,代碼示例:

package main

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

type msg struct {
	Name string
	price int
}

func getBook(c *gin.Context){
        // 第二個參數傳結構體
	c.JSON(200, msg{
		"小王子",
		12,
	})
}

func main() {
	r:=gin.Default()
	r.GET("/book", getBook)
	r.Run(":9090")
}

結果只有一個Name字段,price字段丟失:

將price換成大寫字母開頭即可:

結果出現了Price字段,但是他們都是大寫字母開頭的:

如果要自定義,使用結構體的tag:

結果:

第二個參數傳gin.H類型,也就是map[string]interface{}

結果:

但是,當int類型特別大時,客戶端收到的數據精度會丟失

比如:

結果:

可以把它寫成string類型即可:

結果:

但是如果第二個參數傳的是結構體呢?通過tag設置即可轉序列換為string類型:

結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM