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

176
Vistas
Descanse Api para clonar el repositorio desde git

Intenté hacerlo pero me di por vencido... sí, ¿es posible cuando llamas al ejemplo, https:api.domain.com/createfile/(+ data) crea un archivo en ese servidor en la carpeta que quiero si es así, cómo?

Es un archivo javascript que también quiero hacer funcionar y comenzar el proceso. (ejecútelo npm).

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

0

Suponiendo que tiene acceso de root en su servidor.

Pasos de inicialización:

  1. Instale node.js en su máquina
  2. Cree un nuevo proyecto de nodo e instale Express npm install express debería funcionar
  3. Configure un servidor http básico y ahora debe tomar decisiones sobre cómo enviar las solicitudes
    1. Si planea ejecutar todo a través de http regular, entonces probablemente pueda hacer que el servidor del nodo escuche en el puerto 80 de su máquina. (Realmente debería ejecutar https)
    2. Si desea ejecutar https (y, por lo tanto, tener un nombre de dominio), entonces me tomaría el tiempo de configurar nginx para escuchar el puerto 80 (para redirigir a 443) y 443 (puerto TLS) y luego hacer que sirva como un proxy inverso para el servidor expreso. Por lo tanto, el servidor de nodos podría ejecutarse simplemente en localhost: 3000, por ejemplo. (Si desea un certificado gratuito para SSL, puede usar let's encrypt with nginx )
    3. Mi sugerencia: use nginx como proxy inverso de cualquier manera
  4. Configure su punto final de solicitud, por ejemplo, un punto final de solicitud posterior.
  5. Hay algunas formas de clonar un repositorio a través del nodo, usar shelljs es una forma.

Cómo se verá el servidor Express ahora:

 const express = require('express'); const shell = require('shelljs') const app = express(); app.post('/createfile/:data', async function (req, res) { if (!req || !req.params || !req.params.data ) { return res.status(400).send("Malformed url"); } // I assume the data in the paramas is the url to the git repo const giturl = req.params.data; // You should probably lightly check the url to make sure its a valid one on the surface level. const path = 'absolute/path/to/folder' if (!shell.which('git')) { shell.echo('Sorry, this script requires git'); shell.exit(1); return res.status(400).send("Not supported"); } shell.cd(path) shell.exec('git clone ' + giturl, function (code, stdout, stderr) { console.log('Exit code:', code); console.log('Program output:', stdout); console.log('Program stderr:', stderr); if (code === 0) return res.status(200).send("Success"); else return res.status(400).send("Issue with clone") }); }); const server = await app.listen(3000);
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