在线五子棋游戏(以后还可能开发三字棋)
设计内容:登录界面,大厅(公告板,公告栏,在线玩家列表,开始游戏),
个人界面(用户头像,修改头像,游戏记录),游戏界面
技术栈:
前端游戏文件:vue3.2(pinia,vue-router(前端路由))
前端游戏管理:vue3.2(pinia,vue-router(前端路由) ,elment-UI)
后台服务端: express mongoDB
game --> 主要游戏文件
back --> 后端
gameManage --> 游戏后台管理(开发中)
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/admin');
//数据库模型
const mongoose = require('mongoose');
const UserType = { //限制类型
username:String,
password:String,
avatar:String//头像
};
const UserModle = mongoose.model('user',new mongoose.Schema(UserType)); //user为数据库集合名,对应users
module.exports = UserModle;
//数据库模型
const mongoose = require('mongoose');
const UserType = { //限制类型
id: String,//游戏人我的唯一id
NFG: Number,//游戏次数
winTime:Numvber,//获胜次数
enemyId: String//依次排列 eg aaaa-bbbb-cccc 为3个与本玩家游戏的id
};
const UserModle = mongoose.model('user', new mongoose.Schema(UserType)); //user为数据库集合名,对应users
module.exports = UserModle;
const mongoose = require('mongoose');
const ManageType = {
username:String,
password:String,
};
const ManageModle = mongoose.model('manage',new mongoose.Schema(ManageType));
module.exports = ManageModle;
const mongoose = require('mongoose');
const NewType = { //限制类型
id:String,//编辑人id
title:String,
content:String,
editTime:String,//编辑时间
};
const UserModle = mongoose.model("news",new mongoose.Schema(NewType)); //user为数据库集合名,对应users
module.exports = UserModle;
后端统一端口
5000
/login --> 登录/注册页
/ ()=> /hall -->大厅
/gameing -->游戏中页面
/home -->个人主页
/* --> 404页面
/login --> 登录,无法注册(通过管理员在系统内部新建账号)
/addManager -->添加新的管理员,与激活码配置
/userList --> 用户列表 目的是查看用户数量与用户信息,可以修改用户头像密码
/newsAdd -->添加新的公告
/newsList -->公告栏列表 目的是公告管理与删除
POST http://localhost/game/login
请求参数
{
username,
passworld
}
返回内容
登录成功
{
code: 1,
}
登录失败
{
code: -1,
}
激活码注册
POST http://localhost/game/registered
请求参数
{
username,
password,
activationCode
}
返回内容
{
code: -1,//激活码错误
}
{
code: -2,//注册失败
}
{
code: -3,//用户名重复
}
{
code: 1,//注册成功
}
POST http://localhost/game/changeInf
请求头
'Content-Type': 'multipart/form-data'
请求参数
{
username,
file
}
返回参数
{
code: -2,//用户名重复
}
{
code: 1,//修改成功
}
GET http://localhost/game/userInf
返回内容
{
code: 1,
userData: result,
gameData: result2
}
GET http://localhost/game/notice
返回内容
{
code: 1,
data: result
}
放在保存游戏记录一起了
获胜后累计
POST http://localhost/game/winTimeUp
POST http://localhost/game/gameLog
对方的id+获胜 为json字符串
示例
{
e:1008611,
w: 0
},
{
e:10010,
w:1
}
get http://localhost/game/gameLog
POST http://localhost/manage/login
POST http://localhost/manage/register
返回值
{
code: "1"
}
{
code: "-1"
}
获取全部的已注册管理员
GET http://localhost/manage/getmanage
返回全部用户
{
data:result
}
POST http://localhost/manage/del/user/${_id}
POST http://localhost/manage/addNews
需要参数
const { title, content } = req.body;
GET http://localhost/manage/newList
返回内容
{
code: "1",
username: username,
data: result
}
GET http://localhost/manage/getuser
POST http://localhost/manage/del/manage/${data._id}
POST http://localhost/manage/del/news/${data._id}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。