Gin框架之路由重定向

 1 import (
 2     "github.com/gin-gonic/gin"
 3     "net/http"
 4 )
 5 
 6 func main() {
 7     r:=gin.Default()
 8     //外部重定向 可以通过Redirect跳转到外部页面
 9     //http.StatusMovedPermanently为状态码301 永久移动    请求的页面已永久跳转到新的url
10     //第二个参数为跳转的外部地址
11     r.GET("/t", func(c *gin.Context) {
12         c.Redirect(http.StatusMovedPermanently,"http://www.baidu.com")
13     })
14 
15     //内部重定向 通过c.Request.URL.Path 设置跳转的指定的路径
16     //通过HandleContext函数
17     r.GET("/move", func(c *gin.Context) {
18         // 指定重定向的URL 通过HandleContext进行重定向到test2 页面显示json数据
19         c.Request.URL.Path = "/test2"
20         r.HandleContext(c)
21     })
22     r.GET("/test2", func(c *gin.Context) {
23         c.JSON(http.StatusOK, gin.H{"hello": "world"})
24     })
25     r.Run()
26 }

内部重定向运行结果:

 输入请求为/move ,通过重定向实际请求的地址为 /test2。

原文地址:https://www.cnblogs.com/yh2924/p/12383317.html