看好多人都在问,Refresh Token (rt)有什么用,作用就是通过Refresh Token可以方便地刷新出一个全新的Access Token (at)。
这个at有效期是从拿到的一刻起的10天,既可以在oaifree里免翻使用网页版ChatGPT,还可以生成Share Token(fk-)安全地分享给别人使用你的账号。也能当作API key在始皇提供的接口上进行调用(这个功能目前需要账号是Plus订阅)。
如果您感兴趣,可展开查看更多信息
如何获取自己ChatGPT账号的Refresh Token
有两种方法:
- 利用 邮箱/密码(现已支持第三方渠道登录的账号)去始皇的Auth接口获取,但是需要论坛等级达到2级或更高(这一要求限制可能会在将来提高或降低)。
- 不满足要求的用户也有办法,不过是曲线救国了,而且相当曲线。请自行利用论坛搜索功能。
那么如何使用这个Refresh Token呢?
也有两种方法:
1. 如果你会任何语言或者有代码运行的环境,那么post一下就可以了。
以下是python实现的一个实例
import requests
url = "https://token.oaifree.com/api/auth/refresh"
headers = {
"Content-Type": " x-www-form-urlencoded;charset=UTF-8"
}
data = {
"refresh_token": "这里替换成你的refresh_token"
}
response = requests.post(url, data=data)
print(response.json()["access_token"])
这里的url用了始皇的服务,其实我们OpenAI官网也是可以获取的,如果你能自由的访问OpenAI官网,那么请求中还可以使用下面这个url,在始皇的服务挂了的时候也是一种应急措施:
不过请求的格式有一些不同,python代码如下:
import requests,json
url = "https://auth0.openai.com/oauth/token"
headers = {"Content-Type": "application/json"}
data = {
"redirect_uri": "com.openai.chat://auth0.openai.com/ios/com.openai.chat/callback",
"grant_type": "refresh_token",
"client_id": "pdlLIX2Y72MIl2rhLhTE9VV9bN905kBh",
"refresh_token": "这里替换成你的refresh_token"
}
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.json()["access_token"])
2. 如果你没有任何可以运行代码的环境,那么用一下postman这类工具也可以发送post请求。
你可以安装一个postman软件,也可以使用postwoman这类浏览器插件,也可以使用thunder client这个VScode插件,还可以直接使用在线http接口请求工具,不过在线工具可能不安全,请自行甄别可靠性。
我以浏览器插件postwoman为例演示,在图形界面按照下图设置参数,其中value填写你自己的refresh_token,然后点击发送,等返回后,在下方即可看到access_token
本教程完
使用rt获取at的本质就是实现自动化。一个典型的应用场景是将刷新at的脚本挂在青龙面板里定期运行。
如果这个你也搞不定,可以考虑使用PandoraHelper,一站式管理各种Token。将由@linux大佬提供24h全球工单服务亲自在线解决所有问题。
如果还不会用,点个赞,留言,论坛里的大佬自然会解答