学生编号动态获取接口
题目描述
使用 Gin 框架编写 Web 服务,定义 GET 路由
/student/:id,通过c.Param("id")获取学生编号,返回字符串:学生编号:xxx,立志成才,报效祖国,服务监听 8080 端口。
访问输出示例
http://localhost:8080/student/2025001
学生编号:2025001,立志成才,报效祖国
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
r.GET("/student/:id", func(c *gin.Context) {
id := c.Param("id")
c.String(200, "学生编号:%s,立志成才,报效祖国", id)
})
r.Run(":8080")
}
省份和城市展示接口
题目描述
编写 Gin 服务,定义 GET 路由
/city/:pro/:city,获取省份 和城市 两个参数,返回字符串:省份:xxx,城市:xxx,热爱家乡,建设祖国,服务监听 8080 端口。
访问输出示例
http://localhost:8080/city/四川/成都
省份:四川,城市:成都,热爱家乡,建设祖国
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
// 双参数路由
r.GET("/city/:pro/:city", func(c *gin.Context) {
pro := c.Param("pro")
city := c.Param("city")
c.String(200, "省份:%s,城市:%s,热爱家乡,建设祖国", pro, city)
})
r.Run(":8080")
}
资源路径通配符匹配接口
题目描述
编写 Gin 服务,定义 GET 路由
/file/*path,使用通配符*path匹配任意文件或子目录路径,通过c.Param("path")获取完整路径,返回字符串:请求资源路径:xxx,正在处理文件请求...,服务监听 8080 端口。
访问输出示例
http://localhost:8080/file/images/photo.jpg
请求资源路径:/images/photo.jpg,正在处理文件请求...
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
// 通配符匹配任意文件/目录路径
r.GET("/file/*path", func(c *gin.Context) {
path := c.Param("path")
c.String(200, "请求资源路径:%s,正在处理文件请求...", path)
})
r.Run(":8080")
}
多参数信息筛选接口
题目描述
编写 Gin 服务,定义 GET 路由
/info,获取name、age、city三个参数,返回拼接字符串:姓名:xxx,年龄:xxx,城市:xxx,服务监听 8080 端口。
访问输出示例
http://localhost:8080/info?name=李四&age=22&city=上海
姓名:李四,年龄:22,城市:上海
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
r.GET("/info", func(c *gin.Context) {
name := c.Query("name")
age := c.Query("age")
city := c.Query("city")
c.String(200, "姓名:%s,年龄:%s,城市:%s", name, age, city)
})
r.Run(":8080")
}
用户页码查询接口
题目描述
编写 Gin 服务,定义 GET 路由
/user/list,通过c.DefaultQuery获取查询参数page,默认值为 1 ,返回字符串:
当前页码:xxx,服务监听 8080 端口。
访问输出示例
http://localhost:8080/user/list?page=3
当前页码:3
http://localhost:8080/user/list
当前页码:1
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
r.GET("/user/list", func(c *gin.Context) {
// 带默认值的查询参数
page := c.DefaultQuery("page", "1")
c.String(200, "当前页码:%s", page)
})
r.Run(":8080")
}
用户注册表单参数接收
题目描述
使用 Gin 框架编写一个 POST 接口
/register,用于接收用户注册的表单参数:
username:用户名,必填 ,使用PostForm获取password:密码,必填 ,使用PostForm获取age:年龄,选填 ,使用DefaultPostForm获取,默认值为18gender:性别,选填 ,使用DefaultPostForm获取,默认值为保密接口返回拼接后的字符串,服务监听 8080 端口。
访问输出示例
POST 请求
/register,参数:username=张三
password=123456
age=20
gender=男
返回:
用户名:张三,密码已接收,年龄:20,性别:男
实现代码
Go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
r.POST("/register", func(c *gin.Context) {
// 必填参数,使用 PostForm
username := c.PostForm("username")
password := c.PostForm("password")
// 选填参数,带默认值,使用 DefaultPostForm
age := c.DefaultPostForm("age", "18")
gender := c.DefaultPostForm("gender", "保密")
// 返回结果
c.String(200, "用户名:%s,密码已接收,年龄:%s,性别:%s",
username, age, gender)
})
r.Run(":8080")
}