joaodddev/auth-api-jwt

GitHub: joaodddev/auth-api-jwt

一个基于 Go + Gin + JWT 的身份验证 API 示例项目,展示了用户注册、登录、令牌签发与密码哈希等后端安全实践。

Stars: 0 | Forks: 0

# 🔐 Go Auth API (JWT) 使用 Go 和 JWT (JSON Web Token) 开发的身份验证 API,侧重于后端最佳实践、安全性和分层架构。 ## 🚀 技术 * Go (Golang) * Gin (HTTP 框架) * GORM (ORM) * SQLite (数据库) * JWT (身份验证) * bcrypt (密码哈希) ## 🧠 架构 项目遵循基于职责分离的模块化结构: ``` cmd/ internal/ controller/ service/ repository/ model/ dto/ middleware/ pkg/ database/ configs/ ``` ## 🔐 功能 * ✅ 用户注册 * ✅ 带凭据验证的登录 * ✅ 生成 JWT token * ✅ 使用 bcrypt 进行密码安全哈希 * ✅ 为受保护路由准备的结构 ## 📡 端点 ### 📌 注册 ``` POST /register ``` **Body:** ``` { "email": "user@email.com", "password": "123456" } ``` ### 📌 登录 ``` POST /login ``` **响应:** ``` { "token": "jwt_token_aqui" } ``` ## ▶️ 如何运行 ``` # 克隆仓库 git clone https://github.com/seu-usuario/go-auth-jwt-api # 进入文件夹 cd go-auth-jwt-api # 安装依赖 go mod tidy # 运行项目 go run cmd/main.go ``` API 将在以下地址可用: ``` http://localhost:8080 ``` ## 🧪 测试 API 你可以使用: * Thunder Client (VS Code) * Postman * Insomnia ## 🔒 安全性 * 使用哈希 存储密码 * 带过期时间的 JWT token * 为身份验证 middleware 准备好的结构 ## 💡 项目目标 本项目的开发重点在于实践: * 在 Go 中构建 REST API * 使用 JWT 进行身份验证 * 分层组织代码 * 安全最佳实践 ## 👨‍💻 作者 由 João Victor 开发 🚀
标签:API安全, bcrypt, DNS解析, Gin框架, Go, Golang, GORM, JSON Web Token, JSON输出, JWT, RESTful API, Ruby工具, SQLite, Syscall, Token验证, Web开发, 中间件, 分层架构, 后端开发, 安全哈希, 安全编程, 密码加密, 开源项目, 微服务基础, 提示词优化, 日志审计, 用户注册, 登录认证