如何使用Javascript修改响应(替换字符串)?

如何使用Javascript修改响应(替换字符串)?,javascript,httpresponse,cloudflare-workers,Javascript,Httpresponse,Cloudflare Workers,以下Javscript(在Cloudflare Workers中运行)执行两项任务: 它允许我用domain.com替换我的domain satchel.id(这很有效) 我添加了代码以“satchel.id”代替“domain.com”——这不起作用 .json()将解析json格式的响应字符串,但通常不会返回字符串,.replaceAll只能用于字符串。我想您可以将对象字符串化,然后将其转换回JSON: const result = await originalResponse.json()

以下Javscript(在Cloudflare Workers中运行)执行两项任务:

  • 它允许我用domain.com替换我的domain satchel.id(这很有效)
  • 我添加了代码以“satchel.id”代替“domain.com”——这不起作用
  • .json()
    将解析json格式的响应字符串,但通常不会返回字符串,
    .replaceAll
    只能用于字符串。我想您可以将对象字符串化,然后将其转换回JSON:

    const result = await originalResponse.json()
    const replacedResultJSON = JSON.stringify(result).replaceAll("domain.com", "satchel.id");
    return Response(JSON.parse(replacedResultJSON));
    

    最初,上述代码的行为与预期不符。但现在确实如此

    const result = await originalResponse.json()
    const replacedResultJSON = JSON.stringify(result).replaceAll("domain.com", "satchel.id");
    return Response(JSON.parse(replacedResultJSON));