From 2cbfdc5e04d9d3c24a3f4716a210e0f9f2cfb346 Mon Sep 17 00:00:00 2001 From: Samuel Elliott Date: Wed, 26 Jul 2023 10:10:20 +0100 Subject: [PATCH] Set event stream reconnect time from Retry-After header --- src/util/eventsource.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/util/eventsource.ts b/src/util/eventsource.ts index dc25338..98d5273 100644 --- a/src/util/eventsource.ts +++ b/src/util/eventsource.ts @@ -168,6 +168,12 @@ export default class EventSource { this._response = response; this._connecting = null; + const retry_after = response.headers.get('Retry-After'); + + if (retry_after && /^\d+$/.test(retry_after)) { + this._retry_after = parseInt(retry_after); + } + if (!response.ok) { const error = await EventSourceErrorResponse.fromResponse(response, 'Non-200 status code'); return this._handleResponseError(response, controller, error);