76 lines
2.0 KiB
Markdown
76 lines
2.0 KiB
Markdown
# Page Data 问卷测试案例(TKMind 功能偏好调查)
|
|
|
|
本地演示:john 用户工作区中的 `tkmind-survey.html` + `tkmind-survey-admin.html`。
|
|
|
|
## 一次性准备
|
|
|
|
确保 Portal 已启动(`pnpm dev`,默认 `http://localhost:8081`),然后执行:
|
|
|
|
```bash
|
|
node scripts/setup-page-data-survey-demo.mjs
|
|
```
|
|
|
|
脚本会:
|
|
- **问卷页**以 `public` 发布(访客可直接提交,无需口令)
|
|
- **后台页**以 `password` 发布(口令 **88888888**,平台要求至少 8 位)
|
|
|
|
## 测试入口
|
|
|
|
| 页面 | URL |
|
|
|------|-----|
|
|
| 问卷(访客提交,无需登录) | http://localhost:8081/MindSpace/1c99b83b-0454-474f-a5d2-129d34506a32/public/tkmind-survey.html |
|
|
| 后台(查看记录,需口令) | http://localhost:8081/MindSpace/1c99b83b-0454-474f-a5d2-129d34506a32/public/tkmind-survey-admin.html |
|
|
|
|
后台登录密码:**88888888**
|
|
|
|
## 测试步骤
|
|
|
|
### 1. 验证 pageId 自动注入
|
|
|
|
打开问卷页 → 浏览器开发者工具 → Console:
|
|
|
|
```javascript
|
|
window.__MINDSPACE_PAGE_DATA__
|
|
// 问卷页应返回 { pageId: "...", accessMode: "public" }
|
|
// 后台页应返回 { pageId: "...", accessMode: "password" }
|
|
```
|
|
|
|
### 2. 提交问卷
|
|
|
|
1. 打开问卷链接
|
|
2. 逐步完成 3 道题并提交
|
|
3. 应看到「感谢你的反馈」成功页
|
|
|
|
### 3. 后台查看
|
|
|
|
1. 打开后台链接
|
|
2. 输入密码 `88888888`
|
|
3. 表格中应出现刚提交的记录
|
|
4. 可点「导出 CSV」验证
|
|
|
|
### 4. 确认无旁路 API
|
|
|
|
```bash
|
|
lsof -i :8899 # 应无 survey-api 进程
|
|
```
|
|
|
|
数据读写应全部走同域 `/api/public/pages/:pageId/data/...`。
|
|
|
|
## Agent 复现流程(供对照)
|
|
|
|
```text
|
|
load_skill → page-data-collect
|
|
private_data_execute # CREATE TABLE survey_responses ...
|
|
private_data_register_dataset
|
|
write_file # public/tkmind-survey.html + admin.html
|
|
private_data_bind_workspace_page # 问卷页 + 后台页各 bind 一次
|
|
```
|
|
|
|
HTML 中只需:
|
|
|
|
```javascript
|
|
MindSpacePageData.createClient({ apiBase: '/api' });
|
|
```
|
|
|
|
无需手写 `pageId`。
|