Giter Club home page Giter Club logo

gin-auth's Introduction

gin-auth

主要实现功能

更多相关项目流程参考流程图

  1. 建立用户表的增删改查
    • user 用户储存用户的相关信息,不包含敏感信息。(用户名,密码等)
    • user_login 管理用户密码的登录操作,最终关联到 user 表查询数据
    • user_oauth 管理用户第三方登录的信息,类似user_login (待完善)
  2. 用户功能
    • 发送手机验证码 SendCode
    • 手机号快速登陆/注册 PhoneLogin
    • 账号密码登录 Login
    • 账号密码注册 Register
    • 获取用户信息 GetUserInfo
    • github 登录 LoginGithub
      • (待解决服务器重启之后(Ctrl+C 结束程序),浏览器会有缓存,导致 callback 携带的缓存
        state 随机码与 oauthStateString 对应不上 oauthStateString ) 求解答
  3. JWt 认证功能

运行步骤:

  1. Sql 文件 user.sql 导入数据库 user
    在项目的 conf 配置下。数据库用户、密码默认为 root 端口号:3306

  2. 在项目的根目录下载 swag 命令: go get -u github.com/swaggo/swag/cmd/swag

    运行 swag init 初始化文档 And 运行 go run main.go 跑起来程序

  3. 之后在浏览器上运行 http://localhost:8000/swagger/index.html 开始测试功能

TODO

更新 xmind 流程图

  1. 其它需求暂定

涉及到的知识点(框架)

部分功能会展开介绍,如遇问题 Issues

参考

  1. 整体架构入门参考于 go-gin-example
  2. 建表参考于 廖老师的文章

结语

我也属于刚入行Golang新星.如发现重大问题请直接指出. 小弟积极吸取. Thx.

gin-auth's People

Contributors

tushantong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

gin-auth's Issues

注册方法的user结构体赋值错误了,导致登录的时候会验证密码失败。

改成:userService := userser.User{UserName: mAuth.UserName, Password: mAuth.Password

源码:
func Register(c *gin.Context) {
appG := app.GetGin(c)
var mAuth auth

// 解析 body json 数据到实体类
if err := c.ShouldBindJSON(&mAuth); err != nil {
	appG.ResponseFailError(util.ErrNewErr(err))
	return
}
// 验证
validate := util.GetValidate()
err := validate.Struct(mAuth)
if err != nil {
	appG.ResponseFailValidParam(err)
	return
}

userService := userser.User{UserName: mAuth.UserName, Password: mAuth.UserName}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.