- 基于 openim-electron-demo 改造:工号+密码登录(自研账号服务)、会话列表/聊天窗/通讯录界面重做
- 文字/语音/文件/图片消息、文件拖拽发送、表情面板、一对一语音通话(LiveKit)
- RTC 令牌对接账号服务带鉴权版 /api/rtc_token(Bearer imToken + {room,identity})
- account-service: CORS Allow-Headers 补 authorization(浏览器/渲染进程跨域调 rtc_token 需要)
- 附本地 mock 账号服务(scripts/mock-account-server.js)与截图联调脚本
22 lines
818 B
JavaScript
22 lines
818 B
JavaScript
const { chromium } = require("@playwright/test");
|
|
|
|
(async () => {
|
|
const browser = await chromium.launch({
|
|
executablePath:
|
|
"C:/Users/MoBai/AppData/Local/ms-playwright/chromium_headless_shell-1228/chrome-headless-shell-win64/chrome-headless-shell.exe",
|
|
});
|
|
const page = await browser.newPage({ viewport: { width: 1200, height: 800 } });
|
|
page.on("console", (msg) => console.log("[" + msg.type() + "]", msg.text().slice(0, 300)));
|
|
page.on("pageerror", (err) => console.log("[pageerror]", String(err).slice(0, 500)));
|
|
|
|
await page.goto("http://localhost:5173/");
|
|
await page.waitForTimeout(6000);
|
|
const html = await page.content();
|
|
console.log("body length:", html.length);
|
|
console.log(html.slice(0, 800));
|
|
await browser.close();
|
|
})().catch((e) => {
|
|
console.error(e);
|
|
process.exit(1);
|
|
});
|