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

网站改版页面不收录公司网页设计论文题目大全

网站改版页面不收录,公司网页设计论文题目大全,西安官网seo推广,网站导航是什么意思gin框架内容#xff08;三#xff09;--中间件 Gin框架允许开发者在处理请求的过程中#xff0c;加入用户自己的函数。这个函数就叫中间件#xff0c;中间件适合处理一些公共的业务逻辑#xff0c;比如登录认证、权限校验、数据分页、记录日志、耗时统计等 即比如#x…gin框架内容三--中间件 Gin框架允许开发者在处理请求的过程中加入用户自己的函数。这个函数就叫中间件中间件适合处理一些公共的业务逻辑比如登录认证、权限校验、数据分页、记录日志、耗时统计等 即比如如果访问一个网页的话不管访问什么路径都需要进行登录此时就需要为所有路径的处理函数进行统一一个中间件 Gin中的中间件必须是一个gin.HandlerFunc类型   一、中间件的设置 1.1为路由单独注册中间件 package mainimport (fmtgithub.com/gin-gonic/ginnet/httptime )func indexHandler(c *gin.Context) {fmt.Println(index.....)c.JSON(http.StatusOK, gin.H{msg: index,}) }// 定义一个中间件 func m1(c *gin.Context) {fmt.Println(m1 in.........)start : time.Now()c.Next() //调用后续的处理函数,即indexHandler//Since是一个函数,传入的参数是(t Time),返回值是 Duration//Duration是一个自定义类型,即: type Duration int64cost : time.Since(start) //从开始时间到现在花费的时间fmt.Println(cost)fmt.Println(m1 out.........) }func main() {r : gin.Default()// m1处于indexHandler函数的前面,请求来之后,先走m1,再走indexr.GET(/index, m1, indexHandler)_ r.Run() }1.2为全局路由注册1个中间件 定义的全局中间件,下面的每个路由调用都是经过这个全局中间件 1.3为全局路由注册2个中间件【多个中间件也是这样的思路】 package mainimport (fmtgithub.com/gin-gonic/ginnet/httptime )func indexHandler(c *gin.Context) {fmt.Println(index.....)c.JSON(http.StatusOK, gin.H{msg: index,}) }// 定义一个中间件m1 func m1(c *gin.Context) {fmt.Println(m1 in.........)start : time.Now()c.Next()cost : time.Since(start)fmt.Println(cost)fmt.Println(m1 out.........) }// 定义一个中间件m2 func m2(c *gin.Context) {fmt.Println(m2 in.........)c.Next()fmt.Println(m2 out.........) } func main() {r : gin.Default()//确定中间件中间的关系r.Use(m1, m2)r.GET(/index, indexHandler)r.GET(/shop, func(c *gin.Context) {c.JSON(http.StatusOK, gin.H{msg: shop,})})r.GET(/user, func(c *gin.Context) {c.JSON(http.StatusOK, gin.H{msg: user,})})_ r.Run() }从上面的打印关系可以看出先通过第一个中间件M1的“ c.Next()的前半部分然后在到M2最后到index然后在执行c.Next()的后半部分 这就是一个中间件的链条 1.4中间件的后面路由停止执行 1.4.1终止执行1 package mainimport (fmtgithub.com/gin-gonic/ginnet/httptime )func indexHandler(c *gin.Context) {fmt.Println(index.....)c.JSON(http.StatusOK, gin.H{msg: index,}) }// 定义一个中间件 func m1(c *gin.Context) {fmt.Println(m1 in.........)start : time.Now()c.Next()cost : time.Since(start)fmt.Println(cost)fmt.Println(m1 out.........) }// 定义一个中间件 func m2(c *gin.Context) {fmt.Println(m2 in.........)c.Abort() //阻止调用后续的处理函数fmt.Println(m2 out.........) } func main() {r : gin.Default()r.Use(m1, m2)r.GET(/index, indexHandler)r.GET(/shop, func(c *gin.Context) {fmt.Println(1111)c.JSON(http.StatusOK, gin.H{msg: shop,})})r.GET(/user, func(c *gin.Context) {fmt.Println(222222222)c.JSON(http.StatusOK, gin.H{msg: user,})})_ r.Run() }因为m2中有个“ c.Abort() //阻止调用后续的处理函数 ”阻止后续内容执行到这里就是返回了根本执行不到后续路由信息 1.4.2终止执行2 return 1.5数据传递 在中间件里做一些操作然后在处理函数里拿到或者其它的中间件里拿到对应的数据 package mainimport (fmtgithub.com/gin-gonic/ginnet/httptime )func indexHandler(c *gin.Context) {fmt.Println(index.....)//Get是*Context的方法 传入的参数是(key string) ,返回值是(value interface{}, exists bool)name, ok : c.Get(name)if !ok {name 匿名用户}c.JSON(http.StatusOK, gin.H{msg: name,}) }// 定义一个中间件 func m1(c *gin.Context) {fmt.Println(m1 in.........)start : time.Now()c.Next()cost : time.Since(start)fmt.Println(cost)name, ok : c.Get(name)if !ok {name 匿名用户}fmt.Println(name)fmt.Println(m1 out.........) }// 定义一个中间件 func m2(c *gin.Context) {fmt.Println(m2 in.........)c.Set(name, tom)fmt.Println(m2 out.........) } func main() {r : gin.Default()r.Use(m1, m2)r.GET(/index, indexHandler)_ r.Run() }
http://www.yutouwan.com/news/44005/

相关文章:

  • 网站和网页建设题目网站建设及宣传管理规定
  • 迅美网站建设网站栏目架构
  • 辽宁建网站网站开发的相关岗位
  • 徐州有哪些网站制作公司seo网站排名全选
  • 瀑布流网站源码电子商务网站的建设心得
  • 做cpa的网站源码批量优化网站软件
  • 合肥高端网站建设设计公司手机版企页网站案例
  • 手机 网站 开发每天能赚30 50元的
  • 国际交流中心网站建设与管理制度wordpress登录菜单
  • 金融企业网站源码广东事业单位网站
  • 为网站开发android客户端郑州男科医院十大排名
  • 山东临沂市需要建设网站的公司制定网站分工任务网站的建设规划
  • 请人做网站卖东西好吗贵州省建设厅建筑官方网站
  • 张店易宝网站建设做国外营销型网站设计
  • 沈阳网站建设优化企业当当网网站系统建设的意义
  • 韩国美食做视频网站有哪些谷歌搜索关键字网站
  • 免费个人主页网站Python个人网站建设论文
  • 电子商务网站建设与管理课程心得惠州seo关键词推广
  • 满分作文网站设计制作小车一教学设计
  • 怎么做响应式网站做网络平台的网站有哪些
  • 国外做美食视频网站有哪些企业所得税避税方法
  • 网站提交网址赤峰最好的网站建设公司
  • 效果好的徐州网站建设软件商城哪个好
  • 网站建设 单一来源wordpress 瀑布流模板
  • 福山区建设工程质量检测站网站小学最好的网站建设
  • 做内贸注册什么网站成都企业网站制作哪家好
  • 学做php网站沧县做网站价格
  • 广州南沙网站建设py可以做网站吗
  • 中山移动网站设计做网站有年费吗
  • 开发h5网站开发廊坊百度快照优化