GitHub Proxy 跑在 Replit 上面, wget 获取是乱码, 使用 --compression=auto 参数解决问题
现象
GitHub Proxy 跑在 Replit 上面, wget 获取是乱码, curl 获取正常
在replit上搭建 GitHub Proxy 的教程看以前写的
使用方法:
wget -O- https://ghproxy.crazypeace.repl.co/https://git.io/v2ray.sh
效果是乱码
同样的网址, 用curl获取就是正常的.curl -L https://ghproxy.crazypeace.repl.co/https://git.io/v2ray.sh同样的Github Proxy项目, 搭在Cloudflare worker上面, 用wget获取也是正常的.
wget -O- https://ghproxy.crazypeace.workers.dev/https://git.io/v2ray.sh
摸索过程
百思不得其解. 以为是编码问题, 在搜索引擎里搜了好大一圈, 问了无数GPT问题, 还尝试把乱码喂给GPT看能不能猜出来是什么编码, 都没有解决.
只好把问题发到各个TG群里去骚扰大佬们.
感谢 Elden 大佬出手, 在后面加了个 | gzip -d 就显示正常了
wget -O- https://ghproxy.crazypeace.repl.co/https://git.io/v2ray.sh | gzip -d
追在大佬屁股后面问怎么分析出来的, 大佬说 "直接打开链接,看最后重定向的请求,头部信息显示文件格式是gzip,也就是压缩过,wget是不会处理的,所以需要自己解压".
我在 curl 里面添加 -I 参数, 看到了这样的结果:
curl -L https://ghproxy.crazypeace.repl.co/https://git.io/v2ray.sh -I
在知道了原因后, 我试着问了GPT几个问题.
https://poe.com/s/dlzQJUyRBcKH84LF4cRh
https://poe.com/s/yzFu7na5mHHFd9jNNA1K具体实践
改用 --compression=auto 参数也能解决问题. 而且不管资源有没有 gzip 压缩, 结果都是正确的.
wget --compression=auto -O- https://ghproxy.crazypeace.repl.co/https://git.io/v2ray.sh
wget --compression=auto -O- https://ghproxy.crazypeace.workers.dev/https://git.io/v2ray.sh
现在培养小孩子, 死记硬背没有任何意义; 逻辑思维能力, 解决问题的方法论, 清晰准确的表达能力, 比任何时候都重要.
评论
发表评论