Skip to content

v1.4.3

Choose a tag to compare

@dikxingmengya dikxingmengya released this 30 Sep 10:05
· 59 commits to main since this release

🎉 MisMiss v1.4.3 — 私有 Cookie 可以自助获取了

账户门户新增「获取 Cookie」 · 账户与插件列表支持搜索筛选 · 手机端可用性修复


v1.4.3 是目前改动面最大的一次:给私有 Cookie 账户补上自助取 Cookie 的完整链路,
并把账户、插件两个列表从「一长条平铺」改成了可查可筛。

🎉 新功能

私有 Cookie 自助获取

私有 Cookie 账户原本只能由用户从浏览器开发者工具里手动复制 Cookie,对非技术用户门槛很高。
现在 Bot 页的「自定义 Cookie」区块里有两种获取方式:

  • 书签助手 —— 把按钮拖到书签栏,在猫耳页面点一下,Cookie 自动传回面板
  • 手动获取 —— 书签只把 Cookie 弹出来,自己复制粘贴

取到 Cookie 后会自动把账户切换为自定义模式,不必再手动切一次。

账户与插件的搜索筛选

  • 账户总览:关键词搜索覆盖直播间名称 / 用户名 / 主播名 / 直播间简介 / 主播简介,
    外加账户名、Bot 名与房间 ID;另有状态(正常 / 已过期)与 Bot 模式(公共 / 私有)两组筛选,
    以及分页(每页 12 个)
  • 账户插件 / 账户插件库:按名称、作者、简介搜索;插件库另有「已安装 / 未安装」筛选
  • 面板插件库:关键词搜索 + 「默认插件 / 使用中」筛选

筛选胶囊都带实时计数,筛完没结果会给一个「清除筛选条件」的出口。

账户卡片上的运行时快捷开关

账户卡片新增 Bot 启停、直播间连断两个快捷按钮,省去点进详情页。
两者都会先弹二次确认——它们会改变线上行为,误点代价不小。

时长管理合并

「续期 / 设置剩余天数 / 兑换授权码 / 设为永久」合并进同一个对话框,弹窗顶部可自由切换;
另新增「设为过期停用」,一键把账户置为过期状态(到期时间置为过去并立刻停用)。

🐛 Bug 修复

切到公共 Cookie 会丢掉自定义 Cookie

之前点「公共 Cookie」会直接用面板 Cookie 覆盖掉账户自己的那串,切回来就得重新去浏览器里翻一遍。
现在切走时会把自有 Cookie 留存,切回时给一个「填入上次保存的 Cookie」按钮一键取回。

顺带修掉一条绕过路径:走 PATCH /api/panel/accounts/{id} 切公共模式时没有强制降级权限,
有完整权限的账户切过去会继续握着完整权限却跑着面板的共享 Cookie。

创建账户时,直播间 ID 和登录密码被浏览器自动填充

浏览器(实测 Edge)会把密码框前面那个文本框当成「用户名」配对,于是它把保存的账号
灌进了直播间 ID、把密码灌进了登录密码——一打开弹窗,两个框里就躺着别人的账号密码。

默认用户名会跳号

原本按账户 id 取名,删过账户就会跳号(3 个账户可能默认出 user_7)。改成按账户总数 + 1,
并跳过已占用的名字。

🔧 改进优化

手机端触摸适配

  • Switch 开关视觉仍是 36×20,但点击热区扩到 52×44——手机上 20px 高的目标按不准
  • 筛选胶囊、标签按钮统一抬到 32px 高
  • 日志行改为整行可点展开全文,并加了 ▼/▲ 指示。此前只有正文那一小条能点,
    而且看不出可点——手机上又没有 hover
  • 账户卡片的房间名在手机上换行显示,不再被省略号吞掉

仍在使用默认密码的账户须先改密

默认密码 user123 人人皆知,留着等于没设防。用它登录后会强制先改密才能进面板。

⚠️ 升级注意

  • 书签回传需要面板走 HTTPS。 HTTPS 的猫耳页面无法向 http 地址发请求,
    本地开发环境(http://localhost)用不了这条路径
  • 手机端需要手动新建书签:手机上无法拖拽,面板里给了分平台的逐步说明
    (电脑 / iPhone / iPad / Android / 其他浏览器)
  • 微信、QQ 等内置浏览器装不了书签,需要先「在浏览器打开」换到系统浏览器
  • 除以上外无需任何配置或部署层面配合

📌 为什么没有「面板代登录」

早期实现过一版由面板后端代发的短信登录,实测一律失败,代码已移除。
对照浏览器抓包,猫耳的登录接口有三道服务端伪造不了的门槛:

  1. Content-Type: application/x-www-form-urlencoded(body 却仍是 JSON 文本)
  2. 每个请求带 X-M-DeviceSign —— 由猫耳的指纹库算出 visitorId 再对 URL 签名,
    天生要求请求方是个有真实指纹的浏览器
  3. 一整套登录页访客会话 Cookie(FM_SESS / FM_SESS.sig / MSESSID …),
    其中 FM_SESS.sig 还是签过名的,验证码多半就绑在它上面

书签之所以可行,是因为它运行在用户自己的浏览器、猫耳自己的页面上,
用的是这个人真实的指纹与会话,没有冒充谁。这也是唯一可行的形态。


MisMiss v1.4.3 — 把 Cookie 这件事交给用户自己 ✨