@nuxt/nitro-server
Version:
16 lines (15 loc) • 799 B
JavaScript
import { getRequestHeader } from "h3";
//#region src/runtime/utils/error.ts
/**
* Nitro internal functions extracted from https://github.com/nitrojs/nitro/blob/v2/src/runtime/internal/utils.ts
*/
function isJsonRequest(event) {
if (hasReqHeader(event, "accept", "text/html")) return false;
return hasReqHeader(event, "accept", "application/json") || hasReqHeader(event, "user-agent", "curl/") || hasReqHeader(event, "user-agent", "httpie/") || hasReqHeader(event, "sec-fetch-mode", "cors") || event.path.startsWith("/api/") || event.path.endsWith(".json");
}
function hasReqHeader(event, name, includes) {
const value = getRequestHeader(event, name);
return !!(value && typeof value === "string" && value.toLowerCase().includes(includes));
}
//#endregion
export { hasReqHeader, isJsonRequest };