Этот вызов является проблемой:
fetch(newurl, request, { cf: { cacheTtl: 1800 } })
fetch()
принимает два параметра, а не три.Соглашение о вызовах JavaScript игнорирует дополнительные параметры, поэтому ваш { cf: { cacheTtl: 1800 } }
игнорируется.
Похоже, что вы на самом деле не вносите изменения в URL, поэтому, возможно, вы могли бы просто сделать:
fetch(request, { cf: { cacheTtl: 1800 } })
Если вы действительно хотите переписать URL, вам потребуется двухэтапный процесс:
request = new Request(newurl, request);
let response = await fetch(request, { cf: { cacheTtl: 1800 } });