refactor: centralize isPlainObject, isRecord, isErrno, isLoopbackHost utilities (#12926)

This commit is contained in:
max
2026-02-09 17:02:55 -08:00
committed by GitHub
parent 70f9edeec7
commit 8d75a496bf
37 changed files with 97 additions and 226 deletions

View File

@@ -1,3 +1,5 @@
import { isLoopbackHost } from "./net.js";
type OriginCheckResult = { ok: true } | { ok: false; reason: string };
function normalizeHostHeader(hostHeader?: string): string {
@@ -38,22 +40,6 @@ function parseOrigin(
}
}
function isLoopbackHost(hostname: string): boolean {
if (!hostname) {
return false;
}
if (hostname === "localhost") {
return true;
}
if (hostname === "::1") {
return true;
}
if (hostname === "127.0.0.1" || hostname.startsWith("127.")) {
return true;
}
return false;
}
export function checkBrowserOrigin(params: {
requestHost?: string;
origin?: string;