我看到了一些问题。 if (country != 'US' && country !='CA') { 如果国家是美国或CA,则整个处理程序函数似乎不会运行,这意味着不会发送响应。 // return modified response return new Response(html, { headers: response.headers }) 在这里,您是从原始响应中复制头,但没有复制其他属性,例如状态代码。试试这个: // return modified response return new Response(html, response) 在这里,response的所有属性都将被复制,除了来自html的主体。 另一个问题是,您正在修改所有响应,即使它们不是HTML。例如,您可能无意中修改了JSON API响应。更糟糕的是,如果你处理一个二进制文件,比如一个图像,那么这个代码几乎肯定会损坏它,因为它会将二进制文件转换成文本。为了避免这种情况,您可能希望在修改前检查Content-Type头,比如: const response = await fetch(request) const type = response.headers.get("Content-Type") || ""; if (!type.startsWith("text/html")) {