Usar uma configuração de ambiente: Você pode definir uma variável de ambiente específica para a Vercel que permite que sua aplicação Next.js saiba que a solicitação está vindo da própria aplicação. Por exemplo, você pode definir uma variável de ambiente chamada "VERCEL_INTERNAL_REQUEST" com um valor específico, como "true", e verificar essa variável em seu middleware.js.
Em resposta a [Dúvida] Vercel Rate Limit
1
1
Me desculpe a pergunta, mas você poderia detalhar um pouco mais? porque ficou um pouco confuso para mim como que usar dessa forma iria diferenciar um request recebido de argumento da edge function middleware(request).
1
No seu arquivo middleware.js, você pode verificar a presença dessa variável de ambiente para diferenciar as solicitações:
async function middleware(request) {
const isInternalRequest = process.env.VERCEL_INTERNAL_REQUEST === 'true';
if (isInternalRequest) {
// É uma solicitação interna da aplicação
// Faça algo aqui
} else {
// É uma solicitação externa de um IP normal
// Faça algo aqui
}
// Continue o processamento do middleware
}
1
Me parece que desta forma sempre retornará o valor true.
1
O objeto process.env é interno e não retonara true de uma solicitação externa.