add http metod option, add monitor.method guard to buildResponse

This commit is contained in:
Alex Holliday committed 2026-06-22 10:26:10 -07:00
1 parent 32ec909bf7
commit 93b9c5033a
1 file changed
+18
@@ -53,6 +53,22 @@ export class HttpProvider implements IStatusProvider<HttpStatusPayload> {
}
): MonitorStatusResponse<T> {
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<HttpStatusPayload> {
https: ignoreTlsErrors ? this.httpsAgentInsecure : this.httpsAgent,
};
options.method = monitor.method;
try {
const response = await this.got<string>(url, options);
const statusUp = isStatusUp(response.statusCode, monitor.customUpCodes);