diff --git a/.changeset/lazy-avocados-swim.md b/.changeset/lazy-avocados-swim.md new file mode 100644 index 000000000..f8af795c9 --- /dev/null +++ b/.changeset/lazy-avocados-swim.md @@ -0,0 +1,5 @@ +--- +'@cloudflare/next-on-pages': patch +--- + +make sure that the original request headers are not passed along when fetching external images diff --git a/packages/next-on-pages/templates/_worker.js/utils/images.ts b/packages/next-on-pages/templates/_worker.js/utils/images.ts index f75b9a257..727b97ae8 100644 --- a/packages/next-on-pages/templates/_worker.js/utils/images.ts +++ b/packages/next-on-pages/templates/_worker.js/utils/images.ts @@ -158,11 +158,12 @@ export async function handleImageResizingRequest( // TODO: implement proper image resizing - const imageReq = new Request(imageUrl, { headers: request.headers }); - const imageResp = + const imgFetch = isRelative && imageUrl.pathname in buildOutput - ? await assetsFetcher.fetch(imageReq) - : await fetch(imageReq); + ? assetsFetcher.fetch.bind(assetsFetcher) + : fetch; + + const imageResp = await imgFetch(imageUrl); return formatResp(imageResp, imageUrl, imagesConfig); }