来源: https://t.me/OnlineAppleUserGroup/431181
iOS 的第三方输入 Gboard 最近会遇到无法下载中文输入法的情况,根本原因目前已经找到。
通过抓包发现 Gboard 请求下载的中文输入法资源路径是 /gboard/iOS/gboard_latest
但是实际上这个 gboard_latest 资源路径指向的真实路径下的中文输入方案已经被移动或者删除,所以客户端发起请求后,服务端会直接返回 404 。这就是为什么 Gboard 用户无法下载中文输入方案。
通过抓包发现,Gboard 原带的英文输入方案的输入方案在更新时,访问的资源路径是 /gboard/iOS/gboard_2_3,理论上 gboard_latest 应该指向 gboard_2_3,但是不知道 Gboard 的服务器做了什么。
解决问题的思路也很简单,因为 www.gstatic.com 使用 HTTPS 协议进行通讯,所以首先需要进行中间人解密操作,然后将 gboard_latest 重定向到 gboard_2_3 后,中文输入方案便可以正常下载。
为了方便小白修正这个问题,我制作了 Surge 4 的 Module 。你可以直接安装我写的 Module 来彻底解决这一问题。
https://github.com/Hackl0us/SS-Rule-Snippet/blob/master/Module/Surge/Gboard_zhHans_patch.sgmodule
如果你使用的是 Surge 3 / ShadowRocket / Quanumult(X) 等代理工具也不必担心,可以参考我上面写的 Module,按照你的代理工具的语法,实现同样的功能。一共有两个地方需要修改:
- MITM 的 hostname 需要追加 www.gstatic.com
- URL 需要重写,并使用 302 重定向即可。
如果你使用的是普通的 VPN 代理工具,那么你可以使用 Charles 工具,对 iOS 端流量进行代理,中间人解密后,对请求资源进行 Mapping Local 或修改请求 URL 。
Loon 亲测有效
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.