- 实现登录页面: - 添加登录和注册表单切换功能 - 使用antd-mobile组件(Form, Input, Button, Toast) - 白色背景设计,标题使用主题色 - 表单验证和错误提示 - 已登录用户自动重定向 - 完善用户认证: - 路由保护,未登录用户重定向到登录页 - 用户信息保存到localStorage - Profile页面支持退出登录 - 后端改进: - 启用CORS中间件支持跨域请求 - 更新开发规范: - 在CLAUDE.md中添加前端开发规范 - 明确UI组件使用原则:优先使用antd-mobile组件 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
AnKao Web 项目
这是一个使用Go语言和Gin框架构建的Web应用项目。
项目结构
AnKao/
├── main.go # 主程序入口
├── internal/ # 私有应用代码
│ ├── handlers/ # HTTP请求处理器
│ ├── middleware/ # 中间件
│ └── models/ # 数据模型
├── pkg/ # 公共库代码
│ └── config/ # 配置管理
├── go.mod # Go模块文件
└── README.md # 项目说明
快速开始
运行服务器
go run main.go
服务器将在 http://localhost:8080 启动
API端点
用户相关
POST /api/login- 用户登录
题目相关
GET /api/questions- 获取题目列表GET /api/questions/random- 获取随机题目GET /api/questions/:id- 获取指定题目POST /api/submit- 提交答案GET /api/statistics- 获取统计数据POST /api/reset- 重置进度
其他
GET /api/health- 健康检查端点
开发
安装依赖
go mod tidy
构建
go build -o bin/server.exe main.go
运行编译后的程序
# Windows
.\bin\server.exe
# Linux/Mac
./bin/server
特性
- 基于 Gin 框架的高性能 HTTP 服务器
- 自定义日志中间件
- RESTful API 结构
- 健康检查端点
- 用户登录系统(基于JSON文件存储)
- 题目练习功能
- 答题统计功能
- React + TypeScript + Vite 前端
- Ant Design Mobile UI组件库
用户系统
用户数据存储在 users.json 文件中,格式如下:
{
"用户名": {
"password": "密码",
"avatar": "头像URL",
"nickname": "昵称"
}
}
测试账号
- 用户名:
admin/ 密码:123456 - 用户名:
test/ 密码:test123
前端开发
安装依赖
cd web
npm install
运行开发服务器
npm run dev
构建
npm run build
页面结构
- 首页(刷题页) - 题目练习、随机题目、题目列表、筛选等功能
- 我的 - 用户信息、退出登录
- 登录页 - 用户登录
技术栈
- Go 1.25.1
- Gin v1.11.0 - Web 框架
- 清晰的项目架构,易于扩展
Description
Languages
TypeScript
53.7%
Go
30.6%
Less
15.1%
HTML
0.6%