登录
首页 >  Golang >  Go问答

go gin框架 如何编写 所有控制器都能获取的公共数据?

来源:SegmentFault

时间:2023-01-08 18:39:02 105浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《go gin框架 如何编写 所有控制器都能获取的公共数据?》,主要介绍了go、Gin,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

image.png

在php中,我可以使用extends关键字,使控制器集成父类控制器,使用父类控制器的成员属性。
我在register使用$this->config获取父类控制器$config
我可以在login中也使用$this->config获取父类控制器$config
在gin中如何实现

正确答案

公共数据分两种

  • 全局统一共享的变量比如数据库地址、站点名称、服务名称这些,直接全局变量
  • 同一次请求内共享的变量 通过中间件设置 Context

app := gin.New()

app.Use(func(context *gin.Context) {
    context.Set("abc", "val")
})

app.GET("/test", func(context *gin.Context) {
    data, _ := context.Get("abc")
    context.HTML(200, data.(string), nil)
})

终于介绍完啦!小伙伴们,这篇关于《go gin框架 如何编写 所有控制器都能获取的公共数据?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表