关于 opencode 登陆 chatgpt puls模式时,浏览器登陆成功但返回token交换失败的403错误解决办法
一般来说,都是在远程开发机上面写代码,但是登录openai时有问题。
浏览器返回登录成功但是opencode却没拿到令牌。
原因是:
opencode拿到登录权限时,会在本地发起访问,以获取token,此时本地就是localhost VPN上网时,这里也会走代理。
那么就导致了不是localhost而是你的代理地址。
此时,只需要让本地不要走代理即可。
首先,如果你开发机是远程。
opencode登录时走的windows这里的浏览器。
那么你需要先作windows至linux的端口映射。
具体操作为:
ssh -R 33210:127.0.0.1:33210 -R 33211:127.0.0.1:33211 your_user@your_remote_host
参数说明:
33210 数字是你本地代理的端口,我用的vpn是红海,它的默认端口就是33210
33211则是socks5的端口,需要结合各位的vpn具体配置。
然后登录你的远程开发机后:
export HTTP_PROXY=http://127.0.0.1:33210 export HTTPS_PROXY=http://127.0.0.1:33210 export ALL_PROXY=socks5://127.0.0.1:33211 export NO_PROXY=localhost,127.0.0.1,::1 export http_proxy=$HTTP_PROXY export https_proxy=$HTTPS_PROXY export all_proxy=$ALL_PROXY export no_proxy=$NO_PROXY
将所有代理全部临时清空。
curl -x http://127.0.0.1:33210 https://auth.openai.com/ -L
验证是否通畅。
最后登录即可
opencode auth login
最后,如果你们开发环境不能连接外网,那么windows的端口转发就不管关,需要持续开启才可以。
浙公网安备 33010602011771号