fix: move isbot check after body parsing

This commit is contained in:
Oleh Astappiev 2025-03-31 22:56:52 +02:00
parent 38ab685143
commit eafd08b4ee
No known key found for this signature in database
GPG key ID: 37D7AC22589E9632

View file

@ -34,11 +34,6 @@ const schema = z.object({
export async function POST(request: Request) {
try {
// Bot check
if (!process.env.DISABLE_BOT_CHECK && isbot(request.headers.get('user-agent'))) {
return json({ beep: 'boop' });
}
const { body, error } = await parseRequest(request, schema, { skipAuth: true });
if (error) {
@ -86,6 +81,11 @@ export async function POST(request: Request) {
const { ip, userAgent, device, browser, os, country, subdivision1, subdivision2, city } =
await getClientInfo(request, payload);
// Bot check
if (!process.env.DISABLE_BOT_CHECK && isbot(userAgent)) {
return json({ beep: 'boop' });
}
// IP block
if (hasBlockedIp(ip)) {
return forbidden();