rafaelmmillerrevert mog changes72167991 year agoHistory
35 lines · 999 B · TypeScript
RawDownload
import { Request } from "express";import { supabase_rr_service, supabase_service } from "../supabase";import { validate as isUuid } from "uuid";import { logger } from "../../../src/lib/logger"; export async function validateIdempotencyKey(req: Request): Promise<boolean> {  const idempotencyKey = req.headers["x-idempotency-key"];  if (!idempotencyKey) {    // // not returning for missing idempotency key for now    return true;  }  // Ensure idempotencyKey is treated as a string  const key = Array.isArray(idempotencyKey)    ? idempotencyKey[0]    : idempotencyKey;  if (!isUuid(key)) {    logger.debug("Invalid idempotency key provided in the request headers.");    return false;  }   const { data, error } = await supabase_rr_service    .from("idempotency_keys")    .select("key")    .eq("key", idempotencyKey);   if (error) {    logger.error(`Error validating idempotency key: ${error}`);  }   if (!data || data.length === 0) {    return true;  }   return false;}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t