yanlongqi 92e8c9a94c 实现完整的登录注册功能并优化前端组件
- 实现登录页面:
  - 添加登录和注册表单切换功能
  - 使用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>
2025-11-03 23:56:53 +08:00

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
保密考试刷题
http://ankao.yuchat.top
Readme 3 MiB
Languages
TypeScript 53.7%
Go 30.6%
Less 15.1%
HTML 0.6%