-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4,222 changed files
with
439,997 additions
and
0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
VUE_APP_BASE_URL=/ | ||
PORT=3000 | ||
JWT_SECRET=your_jwt_secret_here |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"git.ignoreLimitWarning": true | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,166 @@ | ||
# 网站开发工作流程 | ||
|
||
## 1. 页面设计 | ||
|
||
### 1.1 确定视觉风格 | ||
|
||
- **主题色彩与风格** | ||
- 确定网站的主色调和整体视觉风格。 | ||
- 设计网站的 Logo、图标和其他视觉元素。 | ||
|
||
### 1.2 布局设计 | ||
|
||
- **首页** | ||
- 展示游戏简介、特色功能和最新公告。 | ||
- **隐私政策页面** | ||
- 详细说明用户数据的使用方式和保护措施。 | ||
- **游戏详情页面** | ||
- 介绍游戏的玩法、截图和玩家评价。 | ||
- **用户中心** | ||
- 提供用户信息查看、账号管理和设置功能。 | ||
|
||
### 1.3 响应式设计 | ||
|
||
- **多设备适配** | ||
- 确保网站在电脑、平板、手机等不同设备上都有良好的显示效果。 | ||
- **浏览器兼容** | ||
- 保证网站在主流浏览器(Chrome、Firefox、Safari、Edge)上的兼容性。 | ||
|
||
## 2. 多语言支持 | ||
|
||
### 2.1 语言资源文件 | ||
|
||
- **创建语言包** | ||
- 准备简体中文、繁体中文和英文的语言文本文件(如 JSON、YAML 等格式)。 | ||
- **文本提取** | ||
- 将页面中的文本内容替换为可翻译的语言标识符。 | ||
|
||
### 2.2 引入国际化框架 | ||
|
||
- **前端国际化库** | ||
- 如果使用 Vue.js,集成 `vue-i18n`。 | ||
- 如果使用 React,集成 `react-intl` 或 `i18next`。 | ||
|
||
### 2.3 实现语言切换 | ||
|
||
- **用户选择** | ||
- 在网站顶部或底部添加语言切换组件(如下拉菜单)。 | ||
- **默认语言** | ||
- 根据用户浏览器的语言设置自动选择默认语言。 | ||
|
||
## 3. 用户系统 | ||
|
||
### 3.1 用户注册与登录 | ||
|
||
- **注册功能** | ||
- 用户使用邮箱和密码注册账号。 | ||
- **登录功能** | ||
- 支持邮箱密码登录和第三方登录(后续可扩展)。 | ||
- **密码安全** | ||
- 使用强加密算法(如 bcrypt)加密存储用户密码。 | ||
|
||
### 3.2 Discord 账号绑定 | ||
|
||
- **OAuth2 授权** | ||
- 集成 Discord 的 OAuth2 流程,获取用户的 Discord 信息。 | ||
- **绑定与解绑** | ||
- 在用户中心提供绑定和解绑 Discord 账号的功能。 | ||
- **账号换绑** | ||
- 允许用户将角色数据换绑到另一个 Discord 账号。 | ||
|
||
## 4. 内购功能 | ||
|
||
### 4.1 支付系统集成 | ||
|
||
- **选择支付平台** | ||
- 选择支持全球支付的平台,如 Stripe 或 PayPal。 | ||
- **支付流程设计** | ||
- 用户选择商品 → 进行支付 → 支付成功后生成兑换码。 | ||
|
||
### 4.2 兑换码生成与管理 | ||
|
||
- **生成兑换码** | ||
- 支付成功后,系统自动生成唯一的兑换码。 | ||
- **兑换码管理** | ||
- 在数据库中存储兑换码信息(码值、关联用户、商品、状态等)。 | ||
- **用户查看** | ||
- 用户可在个人中心查看已购买的兑换码和使用状态。 | ||
|
||
### 4.3 安全性考虑 | ||
|
||
- **数据传输安全** | ||
- 全站使用 HTTPS,确保数据传输加密。 | ||
- **防欺诈措施** | ||
- 验证支付结果,防止伪造支付请求。 | ||
|
||
## 5. 前后端交互 | ||
|
||
### 5.1 API 接口设计 | ||
|
||
- **用户接口** | ||
- 注册、登录、登出、获取用户信息等。 | ||
- **账号绑定接口** | ||
- 获取 Discord 授权链接、绑定和解绑操作。 | ||
- **支付接口** | ||
- 创建订单、接收支付回调、查询订单状态。 | ||
- **兑换码接口** | ||
- 生成、查询和验证兑换码。 | ||
|
||
### 5.2 身份验证与安全 | ||
|
||
- **Token 认证** | ||
- 使用 JWT(JSON Web Token)进行用户身份验证。 | ||
- **权限控制** | ||
- 限制敏感操作,确保只有授权用户才能执行。 | ||
|
||
## 6. 部署与测试 | ||
|
||
### 6.1 开发环境搭建 | ||
|
||
- **本地开发环境** | ||
- 设置前后端开发框架和必要的开发工具。 | ||
- **数据库连接** | ||
- 配置本地或测试数据库,便于数据操作和测试。 | ||
|
||
### 6.2 测试 | ||
|
||
- **功能测试** | ||
- 测试各模块功能是否按预期运行。 | ||
- **兼容性测试** | ||
- 确保网站在不同设备、不同浏览器上的表现一致。 | ||
- **安全测试** | ||
- 检查并修复常见的安全漏洞(如 SQL 注入、XSS 攻击)。 | ||
|
||
### 6.3 部署上线 | ||
|
||
- **服务器部署** | ||
- 将网站部署到 AWS EC2 实例。 | ||
- **域名和 SSL 配置** | ||
- 绑定域名,配置 SSL 证书,实现 HTTPS 访问。 | ||
- **持续集成** | ||
- 设置自动化部署流程,方便后续更新和维护。 | ||
|
||
## 7. 优化与维护 | ||
|
||
### 7.1 性能优化 | ||
|
||
- **代码优化** | ||
- 压缩和优化前端代码,提高加载速度。 | ||
- **缓存策略** | ||
- 设置合理的缓存策略,减少服务器压力。 | ||
|
||
### 7.2 监控与日志 | ||
|
||
- **日志记录** | ||
- 记录系统日志和用户行为日志,便于问题排查。 | ||
- **异常监控** | ||
- 集成监控工具,及时发现并处理异常情况。 | ||
|
||
### 7.3 功能迭代 | ||
|
||
- **用户反馈** | ||
- 收集用户意见和建议,不断改进网站功能。 | ||
- **新增功能** | ||
- 根据需求,开发新的功能模块,提升用户体验。 | ||
|
||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
# 开发进度 | ||
|
||
目前已完成**需求分析与规划**和**环境搭建**,正在进行**网站开发**,暂未遇到问题。 | ||
|
||
--- | ||
|
||
# 工作流程 | ||
|
||
## 阶段一:需求分析与规划 | ||
|
||
1. **详细梳理需求** | ||
- 确认所有功能需求和细节。 | ||
- 列出优先级,确定核心功能和次要功能。 | ||
|
||
2. **技术选型** | ||
- **后端开发**:选择合适的编程语言(如 Node.js、Python)。 | ||
- **前端开发**:选择前端框架(如 React、Vue.js)。 | ||
- **数据库**:设计数据库结构,使用 AWS Aurora RDS。 | ||
- **部署环境**:配置 AWS EC2 实例。 | ||
|
||
3. **架构设计** | ||
- 绘制系统架构图,明确各模块的交互方式。 | ||
- 定义 API 接口规范。 | ||
|
||
## 阶段二:环境搭建 | ||
|
||
1. **配置 AWS EC2 实例** | ||
- 设置操作系统和必要的运行环境。 | ||
- 配置安全组,开放必要的端口。 | ||
|
||
2. **设置数据库** | ||
- 在 AWS Aurora RDS 上创建数据库实例。 | ||
- 设计数据库表结构,创建数据表和关系。 | ||
|
||
3. **域名和 SSL** | ||
- 购买域名并配置 DNS。 | ||
- 安装 SSL 证书,确保网站使用 HTTPS 协议。 | ||
|
||
## 阶段三:网站开发 | ||
|
||
1. **页面设计** | ||
- 设计用于展示隐私政策和游戏详情的页面。 | ||
- 确保页面响应式,适配不同设备。 | ||
|
||
2. **多语言支持** | ||
- 实现简体中文、繁体中文和英文的语言切换功能。 | ||
- 准备各语言的内容文案。 | ||
|
||
3. **用户系统** | ||
- 开发用户注册、登录功能。 | ||
- 实现 Discord 账号绑定和解绑功能。 | ||
|
||
4. **内购功能** | ||
- 集成支付网关,支持用户在线购买。 | ||
- 生成兑换码,供 Discord Bot 使用。 | ||
|
||
## 阶段四:Discord Bot 开发 | ||
|
||
1. **基础功能搭建** | ||
- 使用 Discord API 创建 Bot 并上线。 | ||
- 实现斜杠命令「/」的基本架构。 | ||
|
||
2. **多语言支持** | ||
- 根据用户的语言偏好,返回相应语言的回复。 | ||
- 准备各功能的多语言文本。 | ||
|
||
3. **游戏功能开发** | ||
- **种田和养殖**:实现玩家种植作物和饲养动物的功能。 | ||
- **探索与任务**:设计探索不同地区和完成任务的机制。 | ||
- **经济系统**:开发跳蚤市场交易和商店购买物品的功能。 | ||
- **娱乐功能**:制作钓鱼、打麻将等小游戏。 | ||
- **战斗系统**:设计组队 Boss 战的规则和流程。 | ||
- **其他功能**:如开保险箱等。 | ||
|
||
4. **音乐播放功能** | ||
- 实现 Bot 加入语音频道并播放音乐的功能。 | ||
- 处理音乐队列和控制指令。 | ||
|
||
5. **数据交互** | ||
- 与数据库交互,保存和更新玩家的游戏数据。 | ||
- 确保数据的实时性和一致性。 | ||
|
||
## 阶段五:网站与 Bot 集成 | ||
|
||
1. **账号绑定** | ||
- 在网站上提供绑定和解绑 Discord 账号的接口。 | ||
- 确保数据在网站和 Bot 之间同步。 | ||
|
||
2. **兑换码使用** | ||
- 实现 Bot 读取和验证兑换码的功能。 | ||
- 处理兑换码兑换的逻辑。 | ||
|
||
## 阶段六:测试 | ||
|
||
1. **功能测试** | ||
- 全面测试所有功能,确保无逻辑错误。 | ||
- 测试多语言切换和显示。 | ||
|
||
2. **安全测试** | ||
- 检查并修复潜在的安全漏洞。 | ||
- 确保支付和用户数据的安全性。 | ||
|
||
3. **性能测试** | ||
- 评估系统在高并发情况下的表现。 | ||
- 优化代码和数据库查询。 | ||
|
||
## 阶段七:部署与发布 | ||
|
||
1. **部署到生产环境** | ||
- 将网站和 Bot 的代码部署到 AWS EC2 实例。 | ||
- 配置自动化部署流程。 | ||
|
||
2. **域名解析与 CDN** | ||
- 完成域名解析,配置 CDN 加速(如有需要)。 | ||
|
||
3. **上线发布** | ||
- 在相关平台和社区宣传,邀请用户体验。 | ||
- 提供反馈渠道,收集用户意见。 | ||
|
||
## 阶段八:运营与维护 | ||
|
||
1. **监控与维护** | ||
- 实时监控系统运行状态,处理异常情况。 | ||
- 定期备份数据库和重要数据。 | ||
|
||
2. **功能更新** | ||
- 根据用户反馈,迭代和优化功能。 | ||
- 持续添加新内容和活动。 | ||
|
||
3. **客服支持** | ||
- 提供用户支持,解答问题和处理投诉。 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
node_modules | ||
npm-debug.log |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
PORT=3000 | ||
DB_HOST=bot-1728.cluster-cpoewwoau5pn.eu-west-2.rds.amazonaws.com | ||
DB_USER=botbot | ||
DB_PASS=Ymy1062325450! | ||
DB_NAME=bot-1728 | ||
JWT_SECRET=development_secret | ||
DB_PORT=5432 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
FROM node:14 | ||
|
||
# 设置工作目录 | ||
WORKDIR /usr/src/app | ||
|
||
# 复制 package.json 和 package-lock.json(如果存在) | ||
COPY package*.json ./ | ||
|
||
# 安装依赖 | ||
RUN npm install | ||
|
||
# 复制后端代码 | ||
COPY . . | ||
|
||
# 暴露端口 | ||
EXPOSE 3000 | ||
|
||
# 运行应用 | ||
CMD ["node", "server.js"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
require('dotenv').config(); | ||
|
||
module.exports = { | ||
jwtSecret: process.env.JWT_SECRET || 'development_secret', | ||
// 其他配置项... | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
const { Sequelize } = require('sequelize'); | ||
|
||
const sequelize = new Sequelize(process.env.DB_NAME, process.env.DB_USER, process.env.DB_PASS, { | ||
host: process.env.DB_HOST, | ||
port: process.env.DB_PORT, | ||
dialect: 'postgres', | ||
dialectOptions: { | ||
ssl: { | ||
require: true, | ||
rejectUnauthorized: false // 如果遇到SSL问题,可能需要这个选项 | ||
} | ||
} | ||
}); | ||
|
||
module.exports = sequelize; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
const jwt = require('jsonwebtoken'); | ||
|
||
const authMiddleware = (req, res, next) => { | ||
const token = req.header('x-auth-token'); | ||
if (!token) { | ||
return res.status(401).json({ message: '无访问权限,请先登录' }); | ||
} | ||
try { | ||
const decoded = jwt.verify(token, process.env.JWT_SECRET); | ||
req.userId = decoded.userId; | ||
next(); | ||
} catch (error) { | ||
res.status(401).json({ message: '无效的令牌' }); | ||
} | ||
}; | ||
|
||
module.exports = authMiddleware; |
Oops, something went wrong.