fix:优化代码

This commit is contained in:
Daniel
2026-03-07 23:35:08 +08:00
parent 382aa955ef
commit c3d219efc1
9 changed files with 179 additions and 158 deletions

View File

@@ -25,7 +25,7 @@
- **解决办法**:脚本里请求 720static.com 的 URL 时,必须加上与浏览器一致的请求头,例如:
- `Referer: https://www.720yun.com/`
- `User-Agent: Mozilla/5.0 (Macintosh; ...) Chrome/120.0.0.0 Safari/537.36`
- 本仓库已在 `fetch_720yun.py``download_file``parse_720yun_doc.py` 的下载逻辑里使用上述头,用 `--download` 拉取时与浏览器行为一致。
- 本仓库已在 `scripts/fetch_720yun.py``download_file``scripts/parse_720yun_doc.py` 的下载逻辑里使用上述头,用 `--download` 拉取时与浏览器行为一致。
---
@@ -45,5 +45,5 @@
## 三、在本项目里怎么用(含底面)
- 解析出的 6 面 URL 已使用正确 CDNssl-panoimg130.720static.com且含底面 mobile_d.jpg。
- 在项目根目录执行 **`python3 parse_720yun_doc.py --download`**,会用与浏览器一致的 Referer/User-Agent 把 6 面 + 缩略图下载到 `image/`,再在页面上选「选择六面体(6张)」按顺序选 image 下 6 张即可。
- 在项目根目录执行 **`python3 scripts/parse_720yun_doc.py --download`**,会用与浏览器一致的 Referer/User-Agent 把 6 面 + 缩略图下载到 `image/`,再在页面上选「选择六面体(6张)」按顺序选 image 下 6 张即可。
- 若仍只有 5 张(没有 d可用一张纯黑或占位图作为第 6 张,或在 config 的 cubemap 里第 6 个用占位图路径。

View File

@@ -45,7 +45,7 @@
npm start
```
默认端口 3000可通过环境变量 `PORT` 修改。
数据文件为 `server/data/pano.db`(首次运行自动创建)。
数据文件为 `server/data/store.json`(首次运行自动创建,纯 JSON无原生依赖)。
2. **生产环境建议**
- 使用 pm2、systemd 等保活。
@@ -65,26 +65,26 @@
"danmakuPosition": "top"
}
```
- 数据来源:SQLite 表 `settings`(在 `server/data/pano.db` 所在库)
- `danmaku_enabled``1` 开启弹幕,`0` 关闭(默认)。
- 数据来源:`server/data/store.json` 中的 `settings` 对象
- `danmaku_enabled``"1"` 开启弹幕,`"0"` 关闭(默认)。
- `danmaku_position`:弹幕区域位置,目前仅使用 `top`(顶部)。
**开启弹幕**:在部署后端的机器上执行(或通过自建管理接口写入)
**开启弹幕**:在部署后端的机器上任选一种方式
1. 直接编辑 `server/data/store.json`,将 `settings.danmaku_enabled` 改为 `"1"`。
2. 或执行(需在 `server` 目录下):
```bash
cd server
node -e "
const db = require('better-sqlite3')('data/pano.db');
db.prepare(\"INSERT OR REPLACE INTO settings (key, value) VALUES ('danmaku_enabled', '1')\").run();
db.close();
const fs=require('fs'),path=require('path');
const p=path.join(process.cwd(),'data','store.json');
const s=JSON.parse(fs.readFileSync(p,'utf8'));
s.settings.danmaku_enabled='1';
fs.writeFileSync(p,JSON.stringify(s,null,0));
console.log('已开启弹幕');
"
```
或使用 SQLite 客户端执行:
```sql
INSERT OR REPLACE INTO settings (key, value) VALUES ('danmaku_enabled', '1');
```
前端会周期性/首次请求 `/api/config`,收到 `danmakuEnabled: true` 后显示顶部弹幕并拉取留言。
---