客户端配置
进入 Admin 的“应用管理”,在目标应用行操作中选择“客户端配置”。弹窗按 Tab 管理与这个应用相关的客户端能力,当前顺序为“分享配置”和“扫码配置”。后续能力通过代码注册新的客户端配置 Tab,不需要继续增加行操作入口。
拥有任意客户端配置读取权限时入口可见;每个 Tab 仍独立执行权限检查、加载、校验和保存。切换 Tab 不会自动保存,关闭存在未提交修改的弹窗会先确认。弹窗没有含义模糊的全局保存按钮。
分享配置
分享配置 Tab 维护可复用平台身份与当前应用之间的绑定,包括启用状态、分享场景、Share Origin、系统分享回退、预检、保存和解除绑定。
app.share_binding.read:查看绑定并执行预检。app.share_binding.update:保存或解除绑定。
System 下原有的全局“分享配置”页面仍然存在,用于管理可复用的平台身份;应用行内 Tab 只管理应用绑定。微信、Apple 等原生平台身份发生变化时,通常需要重新导出和打包客户端才能生效。
扫码配置
扫码配置 Tab 提供“允许扫码网页在 App 内打开”开关和域名规则列表。关闭开关会保留规则,方便以后重新启用;开启时至少需要一条有效规则,最多 100 条。
规则支持:
example.com:只匹配该精确域名。*.example.com:匹配任意层级子域,例如a.example.com和a.b.example.com,但不匹配根域example.com。
服务端会转为小写、移除尾部点、去重并排序。只接受 ASCII/Punycode DNS 域名;协议、路径、查询串、凭据、IP、localhost、非 443 端口和公共后缀通配符都会被拒绝。客户端先做即时格式检查,服务端校验错误会定位到具体规则行。
app.scanner_config.read:查看扫码配置。app.scanner_config.update:编辑和保存扫码配置。
保存使用独立乐观锁。其他管理员已经更新配置时,当前页面会提示冲突并重新读取最新配置,不会覆盖对方修改。
运行时生效
扫码域名白名单通过 /api/v1/public/config 下发,不需要重新打包。但客户端每次扫码前必须成功刷新并解析最新配置才允许打开网页;旧服务未返回、请求失败或数据异常都会关闭 WebView 能力。普通文本和未命中规则的链接只展示扫码结果。
扫码内容不会上传、持久化或写入日志。审计只记录管理员修改配置的前后摘要,不记录用户扫描过什么。