1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

项目需要配置的地方添加 FIXME 环境配置 注释方便查找

This commit is contained in:
2023-04-25 02:17:19 +08:00
parent 64b4fe31a3
commit 95a485cfc4
5 changed files with 26 additions and 4 deletions

View File

@@ -0,0 +1,98 @@
const sleepTime = 0; // 模拟弱网环境等待时间
// 1. 导入http模块
const http = require("http");
var url = require("url");
// 2. 创建一个web服务器对象
const server = http.createServer();
// 3. 监听请求事件
server.on("request", async (req, res) => {
//req-->request 请求对象, res-->response 响应对象
// 通过响应头设置返回前台数据格式及编码。(解决中文乱码的问题)
// res.setHeader('Content-Type', 'text/html;charset=utf-8');
//res.write()表示向客户端输出的方法
// res.write("hello world你好nodejs")
let urlObj = url.parse(req.url, true);
let query = urlObj.query;
res.setHeader('Content-Type', 'text/json;charset=utf-8');
let result = {};
if (req.url.startsWith('/user/login')) {
result = {
success: true,
msg: "登录成功",
data: {
userInfo: {
"id": 1,
"username": "root",
"realname": "真实姓名",
"idNumber": null,
"phoneNumber": null,
"role": 1,
"buildingId": null,
"doorplate": null,
"permission": "0",
"permissionTime": null
}
}
// success: false,
// msg: "用户名或密码不正确",
// data: null
};
} else if (req.url.startsWith('/access/code/getCodeInfo')) {
result = {
success: true,
msg: "成功",
data: {
id: query.id,
qrcodeColor: "green",
infoText: "绿码 请通行",
infoTextColor: "green",
// qrcodeColor: "red",
// infoText: "红码 禁止通行",
// infoTextColor: "red",
}
// success: false,
// msg: "用户名或密码不正确",
// data: null
};
} else {
result = {
success: false,
msg: "服务器内部错误",
data: null,
extra: {
url: req.url,
query: query,
urlObj: urlObj,
method: req.method,
headers: req.headers,
req: Object.keys(req),
res: Object.keys(res)
}
};
}
res.write(JSON.stringify(result));
// 模拟弱网等待时间
await new Promise((resolve) => {
setTimeout(resolve, sleepTime);
})
//res.end()每次响应完,需要调用此方法 来结束响束
res.end();
console.log(new Date(), "req.url", req.url);
})
// 4. 监听端口,为了避免端口冲突,这里给一个本机端口
server.listen(80, () => {
let baseUrl = 'http://localhost:80';
console.log(`服务启动成功: ${baseUrl}/`);
console.log();
console.log(`${baseUrl}/user/login`);
console.log(`${baseUrl}/access/getCodeInfo`);
})