当前位置: 首页 > wzjs >正文

云南昆州建设工程有限公司网站wordpress注册表文件

云南昆州建设工程有限公司网站,wordpress注册表文件,常州二建建设有限公司官方网站,网站设置搜索框是什么知识点请求参数 在web中,请求参数的来源多种多样,常见的有 URL 查询参数、表单参数、JSON 数据、路径参数等。下面将详细介绍不同类型请求参数的处理方式 1.查询参数 URL 查询参数通常出现在 URL 的 ? 后面,多个参数之间用 & 分隔。在 Gin …

请求参数

在web中,请求参数的来源多种多样,常见的有 URL 查询参数、表单参数、JSON 数据、路径参数等。下面将详细介绍不同类型请求参数的处理方式

1.查询参数

URL 查询参数通常出现在 URL 的 ? 后面,多个参数之间用 & 分隔。在 Gin 中,可以使用 c.Queryc.DefaultQuery 方法来获取这些参数。

package mainimport ("github.com/gin-gonic/gin"
)func main() {r := gin.Default()r.GET("/search", func(c *gin.Context) {// 使用 c.Query 获取参数,如果参数不存在则返回空字符串keyword := c.Query("keyword")// 使用 c.DefaultQuery 获取参数,如果参数不存在则返回默认值page := c.DefaultQuery("page", "1")c.JSON(200, gin.H{"keyword": keyword,"page":    page,})})r.Run(":8080")
}

上面的代码中,c.Query("keyword"):尝试从 URL 查询参数中获取 keyword 的值,如果该参数不存在,则返回空字符串。

c.DefaultQuery("page", "1"):尝试从 URL 查询参数中获取 page 的值,如果该参数不存在,则返回默认值 "1"

请求路径:

http://localhost:8080/search?keyword=go 

返回数据:

{"keyword":"go","page":"1"}

请求路径:

http://localhost:8080/search?keyword=go&page=2

返回数据:

{"keyword":"go","page":"2"}

2.数组参数

在 Gin 中,可以使用 c.QueryArrayc.GetQueryArray 方法来获取数组参数。

第一种方式:

package mainimport ("github.com/gin-gonic/gin"
)// User 结构体,用于存储用户信息
type User struct {Address []string `form:"address"`
}func main() {r := gin.Default()// 第一种方式:使用 QueryArray 获取数组参数r.GET("/user/save", func(ctx *gin.Context) {address := ctx.QueryArray("address")ctx.JSON(200, address)})// 第二种方式:使用 GetQueryArray 获取数组参数r.GET("/user/save1", func(ctx *gin.Context) {address, ok := ctx.GetQueryArray("address")fmt.Println(ok)ctx.JSON(200, address)})r.Run(":8080")
}

ctx.QueryArray("address"):该方法会直接从 URL 查询参数中获取名为 address 的所有值,并将其作为字符串切片返回。若参数不存在,则返回空切片。

ctx.GetQueryArray("address"):此方法除了返回参数值的切片外,还会返回一个布尔值 ok,用于表示是否成功获取到参数。若参数存在,oktrue;反之则为 false

请求路径:

http://localhost:8080/user/save1?address=Beijing&address=shanghai

返回数据:

["Beijing","shanghai"]

3.map参数处理

在 Gin 中,可以使用 c.QueryMapc.GetQueryMap 方法来获取map参数。

package mainimport ("github.com/gin-gonic/gin"
)func main() {r := gin.Default()// 第一种方式:使用 QueryMap 获取 map 参数r.GET("/user/map1", func(ctx *gin.Context) {addressMap := ctx.QueryMap("addressMap")ctx.JSON(200, addressMap)})// 第二种方式:使用 GetQueryMap 获取 map 参数r.GET("/user/map2", func(ctx *gin.Context) {addressMap, _ := ctx.GetQueryMap("addressMap")ctx.JSON(200, addressMap)})r.Run(":8080")
}

ctx.QueryMap("addressMap"):该方法会从 URL 查询参数中解析出以 addressMap 为前缀的所有键值对,并将其存储在一个 map[string]string 中返回。

ctx.GetQueryMap("addressMap"):此方法除了返回解析后的 map 外,还会返回一个布尔值,用于表示是否成功获取到参数。

请求路径:

http://localhost:8080/user/map1?addressMap[home]=Beijing&addressMap[company]=shanghai

返回数据:

{"company":"shanghai","home":"Beijing"}

4.表单参数

首先创建form.html,用来演示表单参数,提交到/submit路由


<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Submit Form</title>
</head>
<body>
<form action="/submit" method="post"><label for="name">Name:</label><input type="text" id="name" name="name"><br><label for="age">Age:</label><input type="text" id="age" name="age"><br><input type="submit" value="Submit">
</form>
</body>
</html>

表单参数通常在 HTML 表单提交时发送,请求方法一般为 POST。在 Gin 中,可以使用 c.PostFormc.DefaultPostForm 方法来获取这些参数。

package mainimport ("github.com/gin-gonic/gin"
)func main() {r := gin.Default()r.POST("/submit", func(c *gin.Context) {// 使用 c.PostForm 获取表单参数,如果参数不存在则返回空字符串name := c.PostForm("name")// 使用 c.DefaultPostForm 获取表单参数,如果参数不存在则返回默认值age := c.DefaultPostForm("age", "0")c.JSON(200, gin.H{"name": name,"age":  age,})})r.Run(":8080")
}

c.PostForm("name"):尝试从表单数据中获取 name 的值,如果该参数不存在,则返回空字符串.c.DefaultPostForm("age", "0"):尝试从表单数据中获取 age 的值,如果该参数不存在,则返回默认值 "0"

例如:
在这里插入图片描述

执行后返回,以下数据:

{"age":"28","name":"clown95"}

5.JSON 数据

当客户端以 JSON 格式发送数据时,在 Gin 中可以使用 c.ShouldBindJSON 方法将 JSON 数据绑定到 Go 结构体上。

package mainimport ("github.com/gin-gonic/gin"
)// User 定义用户结构体
type User struct {Name string `json:"name"`Age  int64  `json:"age"`
}func main() {r := gin.Default()r.POST("/user", func(c *gin.Context) {var user User// 将 JSON 数据绑定到 User 结构体if err := c.ShouldBindJSON(&user); err != nil {c.JSON(400, gin.H{"error": err.Error()})return}c.JSON(200, gin.H{"get_name": user.Name,"get_age":  user.Age,})})r.Run(":8080")
}

c.ShouldBindJSON(&user):尝试将请求体中的 JSON 数据绑定到 user 结构体上。如果绑定失败,返回 HTTP 状态码 400 和错误信息。

使用 Postman发送如下 JSON 请求:

请求路径:

http://localhost:8080/user

请求参数:

{"name":"clown95","age": 29
}

返回数据:

{"get_age": 29,"get_name": "clown95"
}

在这里插入图片描述

6.路径参数

路径参数是 URL 路径中的一部分,通常用于表示资源的唯一标识。在 Gin 中,可以使用 c.Param 方法来获取路径参数。

package mainimport ("github.com/gin-gonic/gin"
)func main() {r := gin.Default()r.GET("/user/:id", func(c *gin.Context) {// 获取路径参数 id 的值id := c.Param("id")c.JSON(200, gin.H{"user_id": id,})})r.Run(":8080")
}

c.Param("id"):从 URL 路径中获取 id 参数的值。

http://www.dtcms.com/wzjs/586140.html

相关文章:

  • wordpress acg站网上超市怎么做
  • 网站知识免费傻瓜室内装修设计软件
  • 网站建设与管理是学什么江苏元鼎建设工程有限公司网站
  • 杭州好的公司网站设计用科讯cms做网站的步骤
  • 彩票网站 在哪里做响应式网站页面设计
  • 办公门户网站模板下载重庆网站服务器建设推荐
  • 网站开发发展趋势2018中文域名是什么
  • 如何建设网站教程视屏怎么做转载小说网站
  • 网站空间是怎么开通的傻瓜式网站开发
  • 山东省高中生发展报告在哪个网站做西宁百姓网免费发布信息
  • 吴江住房城乡建设局网站汉字域名注册
  • 专业的网站建设公司做最漂亮的网站
  • 四川移动端网站建设外国人可以在中国做网站吗
  • 两江新区建设管理局网站律师网站建设费用
  • 了解网站建设的基本流程常用的网页设计工具
  • 短租网站建设四川设计院排名
  • 低价建站在哪里买网页设计实训报告总结免费
  • 微商网站模板怎么做网页卖东西
  • 安徽华夏网站建设建筑网360
  • 手机建网站制作新闻国家大事
  • 住房与城乡建设部网站注册中心湖州网站网站建设
  • 蓬莱专业做网站公司百度站长工具平台
  • 手机网站经典案例15秒创意广告短片
  • 手机建网站挣钱吗psd转 wordpress
  • 泰安红河网站建设redis做网站
  • 做网站小编怎么样企业营销策划实训报告
  • 网站建设难么本机怎么放自己做的网站
  • 思帽网站建设深圳做网站的公司哪家最好
  • 哪个网站推荐做挖机事的刷q币网站建设
  • php网站建设含义网站板块模板