用 Pake 在同一个网站上同时登录两个账号
想同时登录同一个网站的两个账号,就做两个 Pake 应用,不要在一个应用里来回切换账号。桌面版在我的应用里点应用的 ⋯ 菜单,选添加另一个账号,会用第一个应用的设置和图标新建一个换了名字的应用,新应用是未登录状态,两个应用的登录互不相干,因为各有各的身份。
为什么第二个应用有自己的登录状态
网站靠 Cookie 和本地存储认出你,这些东西属于某个浏览器配置文件,而 Pake 应用里没有配置文件选择器,隔离来自应用本身。每个 Pake 应用都带一个标识符,桌面版生成的方式和命令行一样,com.pake.a 加上“网址和应用名称”的 MD5 哈希前六位,名字变了标识符就变,同一个网站换两个名字就是两个不同的应用。如果生成出来的标识符已经被另一个已安装的应用占用,桌面版会换下一个,不会复用。
Windows 上应用把网页视图的数据放在以标识符命名的文件夹里,两个标识符就是两个文件夹。添加另一个账号靠的就是这一点,它复制设置和图标,从不复制 Cookie 或浏览器数据,所以新应用一开始没有任何账号登录,结果是许可证或免费名额下的一个新应用,不是对第一个应用的修改。分开存储对登录很方便,但它不是另一个操作系统用户,也不是共用电脑时防别人的安全边界。
先让第一个应用能用,再复制
先给网站做一个应用,登录,把要用的事情试一遍。服务商拒绝内嵌登录时,再复制一份也绕不过去,先去看登录排查,这一点对 Google 账号最明显,因为 Google 的政策针对的是网页视图本身,和你做几个应用无关。
第一个应用能用之后,给它起个具体的名字,比如 Project Work。无痕浏览保持关闭,无痕就是刻意不保留登录、Cookie 和网站数据,账号一退出就没了,就失去意义了。
添加第二个账号
- 打开我的应用,找到第一个应用。
- 打开它的 ⋯ 菜单,选添加另一个账号。
- Pake 会打开一份新草稿,沿用原来的设置和图标,名字类似
Notion 2。 - 把名字改成容易区分的,比如 Project Personal,然后创建应用。
- 打开新应用,用另一个账号登录。
草稿里还可以换图标,两个应用同时出现在程序坞或任务栏时,这是最快的区分办法。如果另一份草稿里有没保存的修改,Pake 会先问你要不要替换。
副本带走了什么,留下了什么
草稿从第一个应用的网址、窗口尺寸和选项、链接规则、User Agent 和图标开始,调好的布局不用重做,和第一个账号绑定的东西则不会带过来,没有 Cookie,也没有保存的网站数据,所以第二个应用打开时是未登录状态。创建之后它就是一个普通应用,可以给它单独的尺寸,或者只给某个账号打开始终置顶,之后改其中一个,另一个不受影响。
检查每个窗口用的是哪个账号
两个应用都打开,看各自的头像或个人资料页。退出再重新打开,确认每个应用还是显示自己的账号,登录能保持多久由网站决定。两个账号都能编辑相似文档的时候,应用名称和账号标注要区分清楚,因为同一个网站的两个窗口乍一看很像。
某个应用显示了错的账号,就在这个应用里退出登录再登录一次,另一个应用不受影响,因为两者不共享 Cookie 和网站数据。
什么时候分开的应用不合适
两个应用意味着占两个免费名额或许可证下的两个应用,还多两个窗口要管。要在五六个账号之间切换,带多个配置文件的浏览器更合适,网站自带账号切换器,而你从不需要同时打开两个时,一个应用就够了。应用也不是给同一台电脑上的别人准备私密访问的办法,两个应用都在你的用户账号下。
搬家和移除
导出的配置文件包含每个应用的名称、网址、选项、代码和图标,不包含登录状态,所以在新电脑上导入会得到同样的两个应用,都是未登录的。Mac 上移到废纸篓会把应用的数据留在这台 Mac 上,Windows 上移除默认保留登录状态和其他数据,勾选同时删除登录状态等数据才会清掉,见换电脑迁移网页应用和管理应用。
CLI 也可以这样做
CLI 用网址和名称生成身份,名字不同,同一个网站就是各自独立的应用,配好 CLI 之后,把示例网址换成你的网站。
pake https://example.com --name project-work
pake https://example.com --name project-personal
想自己固定标识符,可以用隐藏的 --identifier 参数,只能含字母、数字、连字符和点,以字母开头,以字母或数字结尾:
pake https://example.com --name project-work --identifier com.example.project.work
CLI 的 --multi-instance 是另一回事,它允许同一个应用开多个进程,并不会产生不同的账号身份。重新打包时保持两个名字不变,因为名字是标识符的一部分,标识符的行为见进阶用法,环境准备见 CLI 入门。
常见问题
一个 Pake 应用里能同时跑两个账号吗?
不能,一个应用只有一份网站数据,第二个账号就要第二个应用,或者退出再登录。
添加另一个账号会复制我的登录吗?
不会,Pake 复制的是应用的设置和图标,从不复制 Cookie 或浏览器数据,要在新应用里重新登录。
会占用免费名额吗?
会,创建这份副本算一个新应用,而编辑已有的应用不会占用免费名额。
