Note-26375-305

Token ID: 2

ERC-721 1 Transfers

Metadata

{
  "title": "用Cloudflare Workers解决openai的api无法访问",
  "tags": [
    "post",
    "教程"
  ],
  "sources": [
    "xlog"
  ],
  "external_urls": [
    "https://www.laoyan.me/openai_cloudflare"
  ],
  "date_published": "2023-04-21T02:41:12.874Z",
  "content": "众所周知,openai的api网站已经被污染了,中国大陆用户是无法访问的,虽然我们没法直接使用ChatGPT,但是可以通过openai提供的apikey本地部署的方式来进行访问,但是随着它的api网站的被墙,导致本地部署也的需要点魔法才能使用,其实我们可以通过Cloudflare Workers来解决openai的api被墙,实现在不借助魔法的环境下也能畅快使用ChatGPT带来的乐趣。\n\n![a.png](ipfs://bafkreiaakcmhx2ccit7ojr6julosletwal6ogpxk2b7g3wdymax4li2ssu)\n## 准备工作\n1. 一个自己的域名(因为Workers也被墙)\n2. 将自己域名NS转移到Cloudflare\n## 将域名转移到Cloudflare到DNS\n登陆Cloudflare首页,找到添加站点,将自己的域名输入进去,按他的步骤一步一步走即可,一般一小时内即可解析完成。这里比较简单,我重点介绍部署workers\n\n![[email protected]](ipfs://bafkreicyeyryuybujhrixbhmuz4ibjbqrpwad6qmrjz6v44jiclmkyoipm)\n## 开始部署Workers\n我们回到控制台的首页,找到左侧边栏中的workers,进去后我们可以看到右上角有个创建服务,这边我们创建一个服务\n\n![wk.jpg](ipfs://bafkreidm3e2cjt3t54m2iiuyfini7iipbyxft4kxsfpgc7buwmlbs6eroy)\n\n然后我们给这个服务取个名字,直接点击创建服务即可。\n\n![1111.jpg](ipfs://bafkreibfd3ubqbniviihqmeqplshpxtta5gvm5lljd47fzvh3zagcgr7ou)\n\n创建好了就会自动回到这个服务中,点击右上角的快速编辑\n\n![222.png](ipfs://bafkreidyfat46kirncyge42dzhvqnf7xbkmu2pgywgca3z3v7isqm4rsum)\n\n然后将以下代码替换到左边编辑器里的代码\n```\nconst TELEGRAPH_URL = 'https://api.openai.com';\n\naddEventListener('fetch', event => {\n  event.respondWith(handleRequest(event.request))\n})\n\nasync function handleRequest(request) {\n  const url = new URL(request.url);\n  url.host = TELEGRAPH_URL.replace(/^https?:\\/\\//, '');\n\n  const modifiedRequest = new Request(url.toString(), {\n    headers: request.headers,\n    method: request.method,\n    body: request.body,\n    redirect: 'follow'\n  });\n\n  const response = await fetch(modifiedRequest);\n  const modifiedResponse = new Response(response.body, response);\n\n  // 添加允许跨域访问的响应头\n  modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');\n\n  return modifiedResponse;\n}\n```\n然后点击下方“保存并部署”即可!\n\n但是这个时候,你的workers并不能访问,我们还需要绑定自己刚才转移到Cloudflare的域名\n回到项目中,找到“触发器”!\n\n![333.png](ipfs://bafkreibmeshknpacyttcpahq32fhqhqzdf7uilbkp77adv4sqbi2silfoq)\n\n然后绑定域名即可!\n\n![yuming.gif](ipfs://bafybeic6x7ijh4n6z433hqmljaizrwfg33pjzl4gsf63sdi2spavgpcsyq)\n\n接下来你就可以愉快的使用这个域名作为openai的api接口域名了!",
  "attributes": [
    {
      "value": "openai_cloudflare",
      "trait_type": "xlog_slug"
    }
  ]
}