From 93b9c5033adb3e3dded2cbbe9c3e2c4027b5f507 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Mon, 22 Jun 2026 10:26:10 -0700 Subject: [PATCH] add http metod option, add monitor.method guard to buildResponse --- server/src/service/network/HttpProvider.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/server/src/service/network/HttpProvider.ts b/server/src/service/network/HttpProvider.ts index 9f638dbd6..2f08dab00 100644 --- a/server/src/service/network/HttpProvider.ts +++ b/server/src/service/network/HttpProvider.ts @@ -53,6 +53,22 @@ export class HttpProvider implements IStatusProvider { } ): MonitorStatusResponse { const { body, contentType, statusCode, statusUp, message, responseTime, timings } = opts; + + // Return early for HEAD requests, no body to parse + if (monitor.method === "HEAD") { + return { + monitorId: monitor.id, + teamId: monitor.teamId, + type: monitor.type, + status: statusUp, + code: statusCode, + message, + responseTime, + timings, + payload: body as T | string, + }; + } + const isJson = contentType.includes("application/json"); if (monitor.jsonPath && !isJson) { @@ -155,6 +171,8 @@ export class HttpProvider implements IStatusProvider { https: ignoreTlsErrors ? this.httpsAgentInsecure : this.httpsAgent, }; + options.method = monitor.method; + try { const response = await this.got(url, options); const statusUp = isStatusUp(response.statusCode, monitor.customUpCodes);