Golang Go语言中gin的用户验证,用户组这些都要自己实现吗?

那 gin 比直接写又有啥优点呢。。。
Golang Go语言中gin的用户验证,用户组这些都要自己实现吗?

18 回复

你也许需要一些别人写好的框架。

更多关于Golang Go语言中gin的用户验证,用户组这些都要自己实现吗?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html



准备看看 Buffalo 了

直接写指的是直接用原生 net/http 包吗? gin 的话社区有些中间件,比如 gin-swagger 、gin-oauth2 等等,另外 gin 本身也封装成 context 处理了。

gin 差不多就只是一个路由框架,你那种功能是没有的,要自己搞。

擦,This repository has been archived by the owner on Feb 25, 2024. It is now read-only.
Buffalo 停止维护了。。。
有没有 golang 下面类似 python django 的框架推荐?

#5 Hertz 和 beego 呢

goframe 也许能满足你的需求
#5

goframe 集成度比较高

#5 基于 gin 封装的脚手架 sponge ,集成了从生成代码到开发、测试、api 文档、部署功能,或许可以符合你的要求

goframe 吧,现在接手别人之前用 gin 写的项目,也在用 goframe 慢慢融进去,主要是工具很全,用在别的项目里也很方便。

挺多的,根据自己喜好进行选择,我用: https://github.com/go-eagle/eagle 可快速开发 api 、微服务,还可以使用 cli 快速生成代码

你们都喜欢写 APi ,都要先写个文件,然后再生成吗?

哥们你问出了我正想问的问题,我也是非常熟悉 Django ,然后刚开始用 gin ,前端时间自己写服务器探针的服务端本身打算用 gin 开发,然后想了一遍要自己去实现一个基本的 RBAC ,然后还要搞后端管理页面,感觉还没开始做真正的业务就要大费周章,于是放弃了,还是 Django 搞的,半天就搞完了。不过客户单是 go 实现的,因为可以编译后直接运行,不需要运行环境,比 Python 方便多了

gin 只是一个 web 框架,web 框架就是给你实现路由匹配、参数绑定、序列化、反序列化这些功能

gin 对应的就是 Python 中的 flask 、fastapi 这些,不是走大而全的路线。gin 也有相关的生态,比如 gorm 、ent 等 orm ,gin-vue-admin 也可以用于快速搭建一个基础框架


是啊,我感觉光看一下 gin 里的认证,cas 单点登录,用户权限这些相关的项目,
用 django 早就做完了。
不过 go 的部署确实太爽了,我决定还是用 gin 而不是 django 。

在Golang中使用Gin框架时,关于用户验证和用户组的管理,虽然Gin本身并不直接提供这些功能,但开发者并不需要从零开始完全自己实现。Gin作为一个轻量级的HTTP框架,主要关注于请求处理和路由管理,而用户验证和用户组管理通常是通过中间件或集成其他库来实现的。

对于用户验证,你可以使用JWT(JSON Web Token)或OAuth等标准来实现。有许多现成的Go库可以方便地生成和验证这些令牌,比如github.com/dgrijalva/jwt-go。你可以编写一个Gin中间件,用于在每个请求中验证JWT令牌的有效性,从而确保用户已认证。

至于用户组管理,这通常涉及到权限和角色的分配。你可以使用RBAC(基于角色的访问控制)模型来设计你的系统。在Go中,有像casbin这样的库,它提供了强大的RBAC、ABAC(基于属性的访问控制)等模型支持,可以很容易地与Gin集成,实现细粒度的权限控制。

因此,虽然Gin框架本身不直接提供用户验证和用户组管理的功能,但通过结合使用现有的Go库和中间件,你可以非常高效地实现这些功能。这样不仅可以节省开发时间,还能确保你的系统具有高度的安全性和可扩展性。如果你需要更具体的代码示例或实现建议,欢迎继续提问。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!