请问有佬知道怎么用大善人Cloudflare解决跨域问题吗

然后你就可以用 域名?proxy_url=源URL 来跳过源URL的cors限制

1 个赞

你的哪个搞了好久会报错,我刚刚终于成功了 看看我的 :laughing: :laughing:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request));
});

async function handleRequest(request) {
  if (request.method === 'OPTIONS') {
    // 处理预检请求
    return new Response(null, {
      status: 200,
      headers: {
        'Access-Control-Allow-Origin': '*', // 替换为你的前端应用域名?不也行
        'Access-Control-Allow-Methods': 'GET, POST, OPTIONS, PUT, DELETE',
        'Access-Control-Allow-Headers': '*',
        'Access-Control-Allow-Credentials': 'true'
      }
    });
  }
  
  // 目标 URL
  const targetUrl = request.url.replace('https://cors.你的.workers.dev/', 'http://你真的后端.com.cn/');

  // 创建新的请求
  const modifiedRequest = new Request(targetUrl, {
    method: request.method,
    headers: request.headers,
    body: request.method !== 'GET' && request.method !== 'HEAD' ? await request.text() : null
  });

  // 获取目标 URL 的响应
  const response = await fetch(modifiedRequest);

  // 创建新的响应头
  const newHeaders = new Headers(response.headers);
  newHeaders.set('Access-Control-Allow-Origin', '*'); 
  newHeaders.set('Access-Control-Allow-Methods', '*');
  newHeaders.set('Access-Control-Allow-Headers', '*');
  newHeaders.set('Access-Control-Allow-Credentials', 'true');

  // 返回新的响应
  return new Response(response.body, {
    status: response.status,
    statusText: response.statusText,
    headers: newHeaders
  });
}

怎么绑定 :face_holding_back_tears:

这样好像不行呀 :cold_face:

这样好像也不行呀(这样好像也会被qiang)

阿里云的也不行呀

怀疑你是优选了或者弄了别的东西。正常情况下使用直接托管在cloudflare的域名,直接添加自定义域就能免翻墙访问了。

1 个赞

我嘞个逗 :melting_face:
我没搞什么呀 之前除了之前搞过WARP的组织

你这个只能代理一个,不是通用型的

没事 这个成功了

现在我搞第二个问题 就是 workers 域名是被墙的 怎么换成别的域名

用直接托管在cloudflare上面的二级域名的子域名。不要用三级域名的子域名,某些三级域名的子域名是会有问题的。

比如说应该直接用 xxxxx.com 的子域名

比如我的这个就是能正常访问的: test.aiuuo.com

1 个赞

可以借用worker代理的思路,请求并转发内容,设置跨域请求头为*

把 /a 换成 /* 就行

是设置自定义路由还是自定义域呀

设置自定义域就行,但也可以设置路由,如果设置路由的话还需要设置a记录指向cloudflare的ip

好像不太行

这个域名好像要双向解析,没用过

怎么绑定的来着 :melting_face: :sweat_smile:

不太会了,这个免费的二级域名好像在cf搞什么都失败的,在它本来的地方设置就可以的
但是我想给个阿里云的二级域名 cf又提示 只能是顶级域名才能绑定 :melting_face:

但是本来的地方没有这种类型的呀 :melting_face:

是我那个二级域名问题 在论坛里再找了一个可以白嫖了一个新的二级域名 直接就可以了

cloudns要泛域名解析,应该是先把一个三级域名NS到cf,cf上A到任意位置开小黄云,再把@都CNAME到那个三级域名上

原来这么复杂的,难怪,当时好像二级域名直接就挂进去了,就没了,就以为可以了 :joy:

我现在试试看

是这样子吗