概述
gin框架-1请求参数的示例:
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
//路由参数的请求的方式:
func request1() {
engine := gin.Default() //创建一个默认的路由引擎
//配置路由
engine.GET("/", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{ //返回json格式的数据
"msg": "Hello,world!",
"flag": true,
})
})
//域名/news?id=999 :调用方式
//http://127.0.0.1:9999/news?id=9999
//http://127.0.0.1:9999/news?id=9999&name="tom"
engine.GET("/news", func(c *gin.Context) {
id := c.Query("id")
name := c.Query("name")
c.String(http.StatusOK, "id=%s,name=%s", id, name)
})
//动态路由设置,调取方式: 域名/user/9999
//http://127.0.0.1:9999/user/9999
engine.GET("/user/:uid", func(c *gin.Context) {
uid := c.Param("uid")
c.String(http.StatusOK, "userid=%s", uid)
})
//启动http服务,默认在0.0.0.0:8080启动服务
engine.Run(":9999")
}
//返回值的形式
func request2() {
engine := gin.Default() //创建一个默认的路由引擎
engine.LoadHTMLGlob("templates/*") //加载html网页的数据信息,为返回html使用的
//配置路由
engine.GET("/", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{ //1.返回json格式的数据
"msg": "Hello,world!",
"flag": true,
})
})
//#######################################
engine.GET("/jsonp", func(c *gin.Context) {
data := map[string]interface{}{
"datalist": "my is goheper",
}
c.JSONP(http.StatusOK, data)
})
//#######################################
//返回 XML 数据
engine.GET("/xml11", func(c *gin.Context) {
c.XML(http.StatusOK, gin.H{
"msg": "hello",
"flag": true,
})
})
//#######################################
//返回 XML 数据--2使用结构体
engine.GET("/xml2", func(c *gin.Context) {
type MessageRecord struct {
Name string
Message string
Age int
}
var msg MessageRecord
msg.Name = "is tom"
msg.Age = 50
msg.Message = "Hello gin !"
c.XML(http.StatusOK, msg)
})
//#######################################
engine.GET("/xml", func(c *gin.Context) {
c.XML(http.StatusOK, gin.H{
"msg": "hello",
"flag": true,
})
})
//#######################################
// //http://127.0.0.1:9999/json
engine.GET("/json", func(c *gin.Context) {
var msg struct { //使用结构体,返回结构体
Name string `json:"user"`
Message string
Age int
}
msg.Name = "xx学golang"
msg.Message = "来自gin的问候"
msg.Age = 50
c.JSON(http.StatusOK, msg)
})
//#######################################
//域名/news?id=999 :调用方式
//http://127.0.0.1:9999/news?id=9999
//http://127.0.0.1:9999/news?id=9999&name="tom"
engine.GET("/news", func(c *gin.Context) {
id := c.Query("id")
name := c.Query("name")
c.String(http.StatusOK, "id=%s,name=%s", id, name) //2.返回字符串方式
})
//#######################################
//动态路由设置,调取方式: 域名/user/9999
//http://127.0.0.1:9999/user/9999
engine.GET("/user/:uid", func(c *gin.Context) {
uid := c.Param("uid")
c.String(http.StatusOK, "userid=%s", uid)
})
//############返回html方式###########################
// 返回html方式:
engine.GET("/html", func(c *gin.Context) {
c.HTML(http.StatusOK, "/default/index.html", map[string]interface{}{
"title": "web网站首页",
})
})
//#######################################
//启动http服务,默认在0.0.0.0:8080启动服务
engine.Run(":9999")
}
func main() {
/*
主要是路由的请求地址方式以及返回值方式的示例:
*/
路由参数的请求的方式:
//request1() //call示例1
路由返回值的方式:
request2() //call示例2
}
最后
以上就是害怕水蜜桃为你收集整理的gin框架-1请求参数的示例:的全部内容,希望文章能够帮你解决gin框架-1请求参数的示例:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复