Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

410
Visualizações
NextJS - TypeError: res.unstable_revalidate no es una función

Intento usar una función completamente nueva lanzada en NextJS v.12.1 https://deepinder.me/nextjs-on-demand-isr . La API en sí funciona bien. Puedo alcanzarlo. Pero a cambio devuelve un error 500 que dice que res.unstable_revalidate is not a function . No funciona ni en desarrollo ( next server && next dev desarrollo) ni en producción ( next build && next start ).

Este es el punto final de la API:

 // ./api/misc/revalidate const revalidateCache = async (_, res) => { console.log(res.unstable_revalidate, 'TEST REVALIDATE'); // res.unstable_revalidate is undefined here :( try { await res.unstable_revalidate('/'); return res.json({ revalidated: true }); } catch (err) { return res.status(500).send(`Error revalidating: ${err}`); } }; export default revalidateCache;

Esta es la invocación:

 // ./apps/client/services/server const getRevalidate = async () => { await fetch('/api/misc/revalidate'); }; export default getRevalidate;

Ver la capa desde la que llamo:

 // .src/pages/index.js // ...some code here const HomePage = ({ page, legacy }) => { const handleClick = () => { getRevalidate(); }; return ( <div className={styles.homeRoot}> <button onClick={handleClick}>REVALIDATE</button> </div> ); };

UPD: uso express para manejar la abstracción de API.

 import express from 'express'; import revalidateCacheApi from './api/misc/revalidate'; export default app => { // ...some code here app.use('/api/misc/revalidate', revalidateCacheApi); };
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

NVM. Era un problema con mi servidor local. Utilizo una configuración avanzada con dos instancias independientes (:3000 y:4000) girando en la memoria.

La forma en que diseñé la API anterior, supongo que la llamaré sobre: servidor 4000. Que de hecho es un servidor Express (obviamente no tiene la API interna de NextJS para purgar el caché).

Así que moví la llamada a las pages/api/revalidate y hasta: 3000 servidor.

Funciona bien:

 // ./src/pages/server/revalidate.js const getRevalidate = async () => { await fetch('/api/revalidate'); }; export default getRevalidate;
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda