Aprendí recientemente que repl.it incluye soporte para crear servidores web. Ya sé, es noticia vieja. En mi defensa, nunca necesité uno antes. En fin, hoy vamos a aprender a crear y desplegar un servidor al estilo microservicio usando repl.it.
El Código
Digamos que ya tienen un repl creado y configurado con node
. Por defecto lo único que tendrán será un archivo index.js
. En ese archivo vamos a colocar el código más simple que necesitamos para probar nuestro servidor. Esto.
module.exports = async function(request, response) {
return 'Hello!';
}
Ahora necesitamos algo más.
El Servidor
El grandioso equipo de vercel tiene exactamente lo que necesitamos para ejecutar ese código, es una librería llamada micro. Pueden instalarla usando el menú en la barra lateral. Le dan click al ícono que parece una caja, ingresan "micro" en la búsqueda. Seleccionan la librería y le dan click al +.
La Configuración
Tenemos la lógica de negocio lista, tenemos el servidor, ahora tenemos que decirle a repl.it cómo ejecutarlo.
Crean otro archivo llamado .replit
con el siguiente contenido.
run = 'node_modules/.bin/micro -l tcp://0.0.0.0:3000 index.js'
Ese archivo, específicamente la propiedad run
, le dice a repl.it qué comando queremos ejecutar cuando presionamos el botón que dice "run".
Ese comando hace esto: Primero busca el archivo ejecutable micro
(es el que configura el servidor), le dice que "escuche" esta url tcp://0.0.0.0:3000
y que index.js
es el punto de entrada de nuestro servidor.
El Gran Final
Ahora todo lo que hace falta es presionar el botón que dice "run" y listo.
Pueden ver un ejemplo aquí: repl - FoolishBurdensomeLine. Y el grandioso contenido que está sirviendo lo pueden ver aquí: https://FoolishBurdensomeLine.vonheikemen.repl.co.
Conclusión
¡Felicitaciones, han creado un servidor!
Tengan presente que micro
de verdad le hace honor a su nombre. En realidad no hace mucho. Les provee dos parámetros con la petición y la respuesta, y ustedes se encargan del resto. Si necesitan un enrutador, autenticación, procesar cookies o lo que sea, busquen en este repositorio: Awesome micro. Si por alguna razón se encuentran en la necesidad de utilizar varias de esas librerías tal vez quieran considerar cambiarse a un framework con más funcionalidades.
Fuentes
Gracias por su tiempo. Si este artículo les pareció útil y quieren apoyar mis esfuerzos para crear más contenido pueden dejar una propina en ko-fi.com/vonheikemen.
Top comments (1)
Si el "hola mundo" les parece aburrido, aquí les dejo un ejemplo "full stack":
micro-quote-machine.
Aquí hay otro ejemplo. Es una api que consulta si es día feriado en Chile: esferiadoenchile.
Deberían poder utilizarla con
curl
(es lo que yo hago).Hasta tiene una pequeña página de documentación.