feat: improve recovery for user actions
This commit is contained in:
@@ -22,6 +22,7 @@ export const POST: APIRoute = async ({ request, redirect, cookies }) => {
|
||||
const response = await fetch(`${base}/api/v1/catch-reports`, { method: "POST", headers: { "content-type": "application/json", "Idempotency-Key": idempotencyKey, "X-Forwarded-For": request.headers.get("x-forwarded-for") || request.headers.get("x-real-ip") || "unknown" }, body: JSON.stringify(payload), signal: AbortSignal.timeout(30_000) });
|
||||
if (!response.ok) {
|
||||
if (response.status === 429) return redirect("/report?state=rate_limited", 303);
|
||||
if (response.status === 409) { cookies.delete("rf4-idempotency-key", { path: "/" }); return redirect("/report?state=conflict", 303); }
|
||||
if (response.status >= 500) return redirect("/report?state=server_error", 303);
|
||||
return redirect("/report?state=create_error", 303);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user