Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

376
Vistas
Why Am I Getting 502 Error After Adding Require In Express JS File?

I am trying to require a js file in my express api but I am getting a 502 error whenever I do. The file getJSON.js is in the same directory as my express js file but for some reason I am having trouble accessing it:

docapi.js:
const http = require('http');
const getJSON = require('getJSON.js'):
const hostname = 'localhost';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World!\n');
})

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

Here is the file I am trying to require:

getJSON.js:
test() {
  console.log("Hello again.")
}

Sorry for such an easy question, but I haven't found an explanation anywhere else. Can anyone tell me what I am doing wrong, please?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

502 is a Bad Gateway error.

Your reverse proxy server can't connect to the Node.js server because the Node.js server fails to start due to the syntax errors in your files.


First: getJSON.js.

A function declaration starts with the function keyword, but you omitted it.

The syntax you are using is for declaring a method, which is only allowed inside a class or object.


Second, you followed your call to require with a colon instead of a semi-colon.


You should have an error report when you tried to start the server (be it locally or on whatever service you are deploying the code to). You really should examine that before resorting to SO.

You should also make use of tools like ESLint which will pick up this kind of error and will integrate with common IDEs (such as the popular, and free, Visual Studio Code).


Once your fix your syntax errors, you need a relative path (e.g. starting with ./) to require a file in the same directory.

You also need to export the function for the assignment from require to do anything useful.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Have you looked at the console for your server process? It's probably spewing out errors.

  • You need a semicolon (;), not a colon (:) after require()
  • Then, you'd get "can't resolve getJSON.js" since what using an absolute path in require would refer to a module in node_modules. Instead, if docapi.js and getJSON.js are in the same directory, you'll want
    const getJSON = require('./getJSON.js');
    
  • Thirdly, the syntax in getJSON.js is invalid: You'll want e.g.
    function test() {
       console.log("Hello again.")
    }
    
  • And to be able to call that function from the other file, you'll need to export it:
    module.exports = function test() {
       console.log("Hello again.")
    }
    
  • After which you could do
    const getJSON = require('./getJSON.js');
    getJSON();
    
    in the other file.
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda