使用 Cloudflare Workers 让 OpenAI API 绕过 GFW 且避免被封禁,不需要到官方重新登录,在本地就可以快乐玩耍,而且不需要翻墙,妈妈再也不用怕我的chatgpt被封啦!
该方案的主要思路是使用 Cloudflare 的 Workers 来代理 OpenAI 的 API 地址,配合自己的域名即可在境内实现访问。因为 Cloudflare Workers 有每天免费 10 万次的请求额度,也有可以免费注册的域名,所以几乎可以说是零成本。而且该方法理论上支持所有被认证的网站,而不只是 OpenAI。
二、使用这个方案需要你有以下东西
1、一个没有被 GFW 认证的域名,可以自行注册,或者找免费的。
2、一个 Cloudflare帐号,如果没有话,可以注册一个。
不知道怎么注册没有被 GFW 认证的域名,可以直接在GFW中注册就好了
三、操作过程
🆕 将域名 NS 转到 Cloudflare
如果域名已经托管在 Cloudflare 的忽略这一步即可。
⚠️ Cloudflare Workers 的域名绑定仅支持托管在 Cloudflare 上的域名,所以得先将域名的 NS 转到 Cloudflare。
没有 Cloudflare 账号的话可以注册一个,具体注册细节就不多说了。注册或登录到 Cloudflare 的管理界面后,点击侧边栏的 “Websites” ,然后点击 “Add a Site” 按钮准备将域名转到 Cloudflare。dash.cloudflare.com/449d854055c…
1.登录帐号到Cloudflare的控制台上,如下图
点击上图的红框,进入到“网站”管理的界面
点击添加按钮,按要求填写上你的域名。
选择Free的版本,然后点击Continute继续,在接下来的界面继续点击Continute,到如下图的界面:
2、 配置Cloudflare Workers
在主界面的左边,找到Worders,点击进出,如果是第一次,界面上是默认给你初始化好了,直接点击下面的按钮继续就可以。
操作之后,会进入到另外一个界面,如下图,在左边的编辑框中,编写对应的js脚本。
将下面的脚本复制进去
const TELEGRAPH_URL = 'https://api.openai.com';
addEventListener('fetch', event => {
event.respondWith(handleRequest(event.request))
})
async function handleRequest(request) {
const url = new URL(request.url);
url.host = TELEGRAPH_URL.replace(/^https?:\/\//, '');
const modifiedRequest = new Request(url.toString(), {
headers: request.headers,
method: request.method,
body: request.body,
redirect: 'follow'
});
const response = await fetch(modifiedRequest);
const modifiedResponse = new Response(response.body, response);
// 添加允许跨域访问的响应头
modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');
return modifiedResponse;
}
填写完成后,点击下面的“save and deploy“。就可以了。
3、配置自己的域名
在worker的主界面上,点击Triggers,进入到绑定域名的界面,然后点击“add custom domain“,进入添加域名的界面。
添加好域名后,你就可以通过自己的域名来访问OpenAI的API了。当然,这里最好是在websites管理那里,开启域名的https,这样会更好。
一切配置好后,就可以通过自己的域名来访问OpenAI的API了,将OpenAI的API是的地址中的域名部分
当然,前提还是你要有一个OpenAI的api-key才行。
4、github下载一个chatgpt前端
比如使用这个github地址:github.com/Yidadaa/Cha…
将BASE_URL修改成你的域名
启动项目
yarn install && yarn dev
可以本地运行也可以挂在服务器,就可以快乐玩耍啦!
想要实现微信机器人接入chatgpt可以看我另一篇文章,juejin.cn/post/722319…
或者到我的github仓库地址直接下载代码运行,欢迎提交PR、Issues,以及Star支持一下。如果你想了解更多项目细节,并与开发者们交流更多关于AI技术的实践,请加我好友,进入ai聊天群,我已经把微信机器人拉到ai聊天群中了,欢迎各位大佬一起研究chatgpt👏🏻👏🏻👏🏻,免费体验chatgpt机器人
扫码关注公众号回复机器人,即可免费体验chatgpt微信机器人