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

389
Visualizações
Lowdb (base de datos json) con Next.js a través de Netlify devuelve el error interno del servidor 500 en la ruta API, funciona localmente

Tengo una configuración de base de datos de archivo plano JSON realmente simple que funciona cuando se ejecuta localmente pero no funciona una vez que está alojado en Netlify. No recibo ninguna otra información de error además de un error 500 en el servidor. Recibo el error incluso si todo lo que hago es importar el objeto clusterDB , por lo que algo sucede con el objeto lowdb. También intenté usar otra biblioteca json db llamada StormDB y tengo el mismo problema.

Devolver mi ruta API con una importación estática del archivo json (sin bibliotecas db) también funciona bien.

Soy nuevo en Next.js y esto parece estar relacionado con la parte de SSR, ya que las rutas API se ejecutan solo en el servidor. ¿Necesito estructurar mis archivos de manera diferente? ¿Estas bibliotecas no son compatibles? Lowdb dice que funciona con Node, y todo funciona localmente para mí.

Aquí está mi archivo de inicio de db (root/db/db.js)

 import {Low, JSONFileSync} from 'lowdb' // Cluster DB Setup const adapter = new JSONFileSync('cluster-db.json') const clusterDB = new Low(adapter) // Initialize if empty clusterDB.read() clusterDB.data ||= { clusters: [] } clusterDB.write() export {clusterDB}

Y mi única ruta API (root/pages/api/clusters.js)

 import {clusterDB} from '../../db/db' export default async function handler(req, res) { await clusterDB.read() switch(req.method) { case 'POST': let newCluster = {severity: req.query.severity, comments: req.query.comments, date: req.query.date} clusterDB.data.clusters.push(newCluster) clusterDB.write() res.status(200).json({status: "Success", cluster: newCluster}) break; case 'GET': if(clusterDB.data.clusters) { res.status(200).json(clusterDB.data.clusters) } else { res.status(404).json({status: "404"}) } break; } res.status(200).json({test: "yay"}) }
about 4 years ago · Juan Pablo Isaza
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