littlebot
Published on 2025-04-17 / 0 Visits
0

【源码】基于 Node.js 的北邮出入校通行证模拟系统

项目简介

本项目可生成网页版北邮出入校通行证。基于 Node.js 开发,用户既能自定义姓名、学院、学号、出入校类型等信息,也能使用随机生成的身份信息,且界面与真实网页完全相同。需注意,使用者将自行承担使用本工具产生的所有后果。

项目的主要特性和功能

  1. 支持信息自定义,每个请求可自定义姓名、学院、学号、出入校类型等关键信息。
  2. 能随机生成身份信息,可快速生成通行证。
  3. 界面高度还原真实的北邮出入校通行证网页。
  4. 具备多方式运行,可直接使用 Node.js 运行,也能通过 Docker 容器化部署。
  5. 提供丰富 API 接口,包括通行证页面获取、日志获取、全局提醒管理、随机信息生成开关、匿名访问开关、白名单设置等。

安装使用步骤

环境准备

.example.env 复制一份为 .env,将 config/example.config.json 复制一份为 config/config.json,并按需修改内容。

运行方法一:直接运行(使用 Node.js)

  1. 确保 node 已正常安装(版本需要 >= 14),通过 node --version 检查是否安装成功。
  2. 进入本项目根目录,执行 npm install 安装依赖。
  3. 执行 chmod +x runner.sh; ./runner.sh start dev --verbose 开始运行,控制台应输出 App listening at 1098510985 是默认端口)。
  4. 在浏览器访问 localhost:10985。桌面端样式和字体显示异常属正常现象,微信访问显示正常。
  5. 若需部署至服务器,在服务器上运行时可使用 ./runner.sh start dev --verbose --detach 使其在后台长期运行,使用 ./runner.sh stop dev 停止运行。

运行方法二:Docker 容器化

  1. 确保安装了 dockerdocker-compose
  2. 执行 docker-compose up --build --file docker-compose-general.yml --env-file .env 来 build 并运行;若服务器使用 traefik 反向代理,可使用 docker-compose up --build,需在 .env 文件中的 WEBSITE_URL 说明域名和路由。
  3. 在浏览器访问 localhost:10985。桌面端样式和字体显示异常属正常现象,微信访问显示正常。
  4. 在服务器上部署时加上 --detach 参数可在后台运行。

开始使用

  1. 建议部署在有公网 IP 的服务器上,方便使用移动网络访问,后续所有网址使用自己服务器地址或域名。
  2. 参考 API 说明填好信息(若 config.jsonisRandomIdentityEnabled 设置为 true 或使用相关 API 开启随机信息生成,服务器会自动生成随机值,可跳过此步)。在电脑浏览器(Chromium 内核)上打开填好信息的 URL(需将中文 escape 掉)。
  3. 打开网页后复制地址栏的 URL,此时剪贴板中的 URL 是 escape 过的。
  4. 将该地址复制并发送到手机微信,方便在手机上直接打开。
  5. 用同样方法生成出校和入校的 URL。
  6. 在手机微信里打开 URL 获取出入校通行证。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】