From 7d0d43d86ed220127644e10b9760063be909f3c4 Mon Sep 17 00:00:00 2001 From: Michael Warner Date: Thu, 28 Oct 2021 11:58:10 -0600 Subject: [PATCH 1/3] fix pinging behind a proxy --- packages/vite/src/client/client.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/vite/src/client/client.ts b/packages/vite/src/client/client.ts index 5c04bc23af0cc1..a54a11a2ff5e2c 100644 --- a/packages/vite/src/client/client.ts +++ b/packages/vite/src/client/client.ts @@ -210,9 +210,12 @@ async function waitForSuccessfulPing(ms = 1000) { // eslint-disable-next-line no-constant-condition while (true) { try { - await fetch(`${base}__vite_ping`) - break + const pingResponse = await fetch(`${base}__vite_ping`) + + if (pingResponse.ok) break // success - 2xx status code + else throw new Error() // failure - non-2xx status code } catch (e) { + // wait ms before attempting to ping again await new Promise((resolve) => setTimeout(resolve, ms)) } } From c62cc4d902b287775d25f80262839d62a1ca3d8c Mon Sep 17 00:00:00 2001 From: Michael Warner Date: Thu, 28 Oct 2021 11:58:10 -0600 Subject: [PATCH 2/3] fix(hmr): client pinging behind a proxy on websocket disconnect --- packages/vite/src/client/client.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/vite/src/client/client.ts b/packages/vite/src/client/client.ts index 5c04bc23af0cc1..a54a11a2ff5e2c 100644 --- a/packages/vite/src/client/client.ts +++ b/packages/vite/src/client/client.ts @@ -210,9 +210,12 @@ async function waitForSuccessfulPing(ms = 1000) { // eslint-disable-next-line no-constant-condition while (true) { try { - await fetch(`${base}__vite_ping`) - break + const pingResponse = await fetch(`${base}__vite_ping`) + + if (pingResponse.ok) break // success - 2xx status code + else throw new Error() // failure - non-2xx status code } catch (e) { + // wait ms before attempting to ping again await new Promise((resolve) => setTimeout(resolve, ms)) } } From d25a753125026d763a42613ec92c964bcb16195a Mon Sep 17 00:00:00 2001 From: mwarnerdotme Date: Thu, 30 Dec 2021 10:24:37 -0700 Subject: [PATCH 3/3] format --- packages/vite/src/client/client.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/vite/src/client/client.ts b/packages/vite/src/client/client.ts index eb3fc1ea57a459..2a97a27108a255 100644 --- a/packages/vite/src/client/client.ts +++ b/packages/vite/src/client/client.ts @@ -210,8 +210,10 @@ async function waitForSuccessfulPing(ms = 1000) { try { const pingResponse = await fetch(`${base}__vite_ping`) - if (pingResponse.ok) break // success - 2xx status code - else throw new Error() // failure - non-2xx status code + // success - 2xx status code + if (pingResponse.ok) break + // failure - non-2xx status code + else throw new Error() } catch (e) { // wait ms before attempting to ping again await new Promise((resolve) => setTimeout(resolve, ms))