admin 发表于 2024-10-13 19:03:59

解决Cloudflare登录new站问题

原因
使用 new.oaifree.com 时,需要手动获取 token 并粘贴。为了简化此步骤,我尝试使用油猴脚本自动拼接,但需在每台设备上单独设置。因此,我考虑使用 CF 反代域名,并在 Worker 中进行拼接操作,访问自定义代理域名即可完成登录(类似 Shared Chat 的功能)。

示例代码如下:

export default {
async fetch(request, env) {
    const url = new URL(request.url);
    url.host = 'new.oaifree.com';
    try {
      if (url.pathname == "/auth/login_auth0") {
      const share_token = await fetchShareToken();
      url.pathname = '/auth/login_share';
      url.searchParams.set('token', share_token);
      }
      return fetch(new Request(url, request));
    } catch (error) {
      console.error("自动获取 share token 失败");
      return fetch(new Request(url, request));
    }
}
}
async function fetchShareToken() {
return "sk-xxxxx";
}

结果如下图所示:


https://linux.do/uploads/default/optimized/3X/2/7/27ca015159c58446f0c19bf3376cc7685786cd4b_2_529x500.png
image742×701 30.6 KB
页: [1]
查看完整版本: 解决Cloudflare登录new站问题