Appearance
源码部署
适用于需要二次开发或定制功能的场景。
环境要求
| 依赖 | 最低版本 | 说明 |
|---|---|---|
| Node.js | 18.x | 推荐 LTS 版本 |
| npm | 9.x | 随 Node.js 一起安装 |
服务端部署
1. 克隆项目
bash
git clone <your-repo-url> im
cd im/server2. 安装依赖
bash
npm install主要依赖:
| 包名 | 用途 |
|---|---|
| express | Web 框架 |
| ws | WebSocket 服务 |
| sql.js | SQLite(WebAssembly 版本,无需编译) |
| jsonwebtoken | JWT 签发与验证 |
| bcryptjs | 密码加密 |
| web-push | Web Push 推送 |
3. 启动服务
bash
node index.js或使用 PM2 进行进程管理(推荐):
bash
npm install -g pm2
pm2 start index.js --name im-server
pm2 save
pm2 startup4. 验证
bash
curl http://localhost:3000/api/push/public-key前端部署
1. 安装 HBuilderX
从 DCloud 官网 下载并安装 HBuilderX。
2. 导入项目
在 HBuilderX 中:文件 → 导入 → 从本地目录导入 → 选择 uniapp/ 目录。
3. 修改配置
编辑 uniapp/config/base.js,设置正确的后端地址:
javascript
export default {
baseURL: 'https://your-main-backend.com',
imBaseURL: 'https://chat.example.com:3000/api',
wsURL: 'wss://chat.example.com:3000'
}4. 运行
| 平台 | 操作 |
|---|---|
| H5 | 运行 → 运行到浏览器 → Chrome |
| 微信小程序 | 运行 → 运行到小程序模拟器 → 微信开发者工具 |
| App | 运行 → 运行到手机或模拟器 |
5. 打包发布
| 平台 | 操作 |
|---|---|
| H5 | 发行 → 网站-H5手机版 → 上传 dist 目录到 Web 服务器 |
| 微信小程序 | 发行 → 小程序-微信 → 上传到微信后台 |
开发模式
开发时建议同时启动前后端,并配置好跨域:
bash
# 终端 1:启动 IM 后端
cd server && node index.js
# 终端 2:启动 UniApp 开发服务
# 在 HBuilderX 中运行到浏览器Nginx 开发环境跨域配置:
nginx
server {
listen 8080;
location /api/ {
proxy_pass http://127.0.0.1:3000;
}
location / {
proxy_pass http://127.0.0.1:8081; # UniApp dev server
}
}