Heroku generaba un error y luego de consultar
heroku logs --tail
encontré que solo era necesario mover la línea
"faker": "...",
desde “devDependencies” a “dependencies”.
Introducción
¿Qué es Express.js?
Configuración del entorno de desarrollo para este curso
Instalación de Express.js y tu primer servidor HTTP
Routing con Express.js
CRUD
¿Qué es una RESTful API?
¡Es tu turno: crea un tutorial!
GET: recibir parámetros
GET: parámetros query
Separación de responsabilidades con express.Router
Instalación de Postman o Insomia
POST: método para crear
PUT, PATCH y DELETE
Códigos de estado o HTTP response status codes
Servicios
Introducción a servicios: crea tu primer servicio
Crear, editar y eliminar
Async await y captura de errores
Middlewares
¿Qué son los Middlewares?
Middleware para HttpErrors
Manejo de errores con Boom
Validación de datos con Joi
Probando nuestros endpoints
Middlewares populares en Express.js
Deployment
Consideraciones para producción
Problema de CORS
Deployment a Heroku
Deployment a Vercel
Próximos pasos
Continúa en el Curso de Node.js con PostgreSQL
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Convierte tus certificados en títulos universitarios en USA
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Nicolas Molina
Aportes 88
Preguntas 21
Heroku generaba un error y luego de consultar
heroku logs --tail
encontré que solo era necesario mover la línea
"faker": "...",
desde “devDependencies” a “dependencies”.
Pa linuts ahi esta
curl https://cli-assets.heroku.com/install.sh | sh
Para los que quieran instalar Heroku.
enlce de Instalación Windows, macOS y Ubuntu 16+
Me pasó que no me corría bien en el ambiente de producción porque la mayoría de las dependencias las instalé en el ambiente de desarrollo. Chequen bien eso para que no les pase como a mí.
Acá mi app.
@EquipoDePlatzi El 28 de Noviembre va a dejar de ser gratis Heroku, por ahora funciona, faltan 10 dias para que se vuelva Pago. Estaría bueno actualizar esta clase, con alternativas a HEROKU con su explicación del deploy.
El comando que menciona el profesor para ver los errores internos es:
heroku logs --tail
Lstimosamente Heroku ya no es gratis, pero hay una opción mil veces más facil y es railway, en el siguiente video que me encontré en Youtube lo hacen en 12 minutos, con 10 minutos de chachara y solo 2 para realizar el deplyment
espero les ayude el aporte
Tuve un error desplegando y luego de mucho buscar fue porque mis módulos de servicios no los llame ejem: products.service.js sino productsService.js y al parecer el estándar debe ser con el . (no lo hice así porque en vscode el archivo me lo tomaba como un Angular no un Javascript entonces pensé que estaba malo) pero al cambiarlo y volver a hacer el push ya me funciono, esta es mi API en Heroku
Documentación para el deploy de nodejs a Heroku
https://devcenter.heroku.com/articles/deploying-nodejs
Para saber la version de node que usan escribir en consola:
node -v
Si quieres cambiarle el nombre a tu app desde el cli de heroku:
$ heroku apps:rename <mi-api-rest>
Le comparto mi aplicación de backend desplegada en heroku.
Teniendo en cuenta que ya no es posible publicar en heroku free, deberias considerar actualizar el curso en este aspecto, mas alla de eso, brutal el curso!
Si se pudo, a la primera y sin quejarme. 💚
Bueno estoy muy perdido…
Lo logre, que emocion!!
https://warm-dusk-88850.herokuapp.com/api/v1/products
Me hizo falta en este curso apis para subir o bajar archivos con node 😦
Si se utiliza el comando
heroku create
Heroku asignara un nombre por defecto al proyecto, pero si se utiliza
heroku create <name>
creara una URL asi
https://<name>.herokuapp.com
En mi caso la URL de mi proyecto es jfbarahonag-store
primero instalar
curl https://cli-assets.heroku.com/install.sh | sh
despues logearse
heroku login
despues hacerle heroku al repo
heroku create
ver la version
heroku --version
despues ponerlo en el package.json
"engines": {
"node": "14.x"
}
probarlo en local
heroku local web
despues configurarle el puerto
index.js
const port = process.env.PORT || 3000;
luego creas un archivo llamado
procfile
web: npm run start
moverse a la rama main
git checkout main
hacer merge de la rama en que estabas trabajando con la rama main
git merge develop
hacer deploy
git push heroku main
debuggear
heroku.logs --tail
Mi app ya desplegada
Heroku hoy en dia es de pago, pueden utilizar Railway
curl https://cli-assets.heroku.com/install.sh | sh
.heroku login -i
.heroku create
. "engines": {
"node": "16.13.1"
}
<h5>Especificar el puerto de forma dinamica:</h5>
const port = process.env.PORT ||3000;
web: npm run start
git push heroku master\main.
Se completó 😄
Aquí está mi api
⚠️ Ojo con las dependencias enviadas a deploy, tienen que ser las que necesiten su app para que funcione correctamente.
Un saludo amigos pude desplegar la app con
render.com
es bastante sencillo de usar, de toda maneras aqui hay un tutorial (esta en ingles ojala les sirva).
Tutorial
lo mejor es que es gratis, intente con heroku no pude, con railway tampoco. pero con esta aplicacion si.
Heroku proximamente dejara de ser gratis, en que otro lado puedo desplegar mi aplicacion Nicolas ?
Tuve problemas haciendo el deployment porque en mac no se usa “main” sino “master” para hacer el push. Después de hacer ese cambio funcionó sin problema y ya tengo mi app 💪🏽
muy buen curso les dejo mi Deploy aqui Muchas gracias Nicolas por todo lo que nos ensenaste en este curso ahora si a practicar
⚠
Si no les funciona con main, prueben con master.
😎 Instalando Heroku con NPM
npm install -g heroku
les comparte mi app desplegada
mi app desplegada
Para quien le salga el siguiente error al hacer push.
Se debe a que el repositorio traqueado ya no existe. Porque puede que lo hayan eliminado, como me pasó.
Primero, deben eliminar ese repositorio de la siguiente manera.
git remote rm heroku
Y ahora debe colocar el link del repositorio donde quieren hacer push, eso lo encuentran en settings, en el apartado App Information. Se coloca así.
git remote add heroku https://git.heroku.com/my-first-deploy-by-victor.git
Y ahora debería funcionar. Espero les ayude.
Wow… de los mejores cursos que he hecho en Platzi. Nico, eres el mejor profe. ¡MUCHAS GRACIAS!
Costo pero se logro!!!
!![](
Muy buena la clase, les comparto mi app
Hello, thanks, this is my API
Si usan otra versión de node diferente a la 14x, les da errror si colocaron la 14x en engines, la solucion es cambiar el engine a la version que tengan
Esta clase está genial!!
Tenia a faker como dependencia de producción y por eso no me funcionaba, pero al cambiarlo a desarrollo, funcionó perfecto.
He aquí mi app en heroku
Cuando usamos** git checkout name_branch**, sólo nos cambiamos a esa rama y cuando lo usamos con el flag -b, estamos diciendo que nos cree una nueva rama y nos cambie en automático a esa rama. 😊
Observación: si al desplegar su API en Heroku aparece este mensaje: Method Not Allowed, solo basta quitar el espacio entre web: y npm en el archivo Procfile, quedando así
web:npm run start
Importante que al momento de corregir los errores que salen en heroku logs --tail se debe hacer nuevamente los commits y el git push heroku master para que los cambios tengan efectos, esto por estar en un ambiente de producción
Gente linda!!!
Este es el resultado de muchas horas de trabajo duro, aprendizaje y debugging!!
Mi API desplegada en Heroku
🎉✨🎉✨🎉🎇🎈
Gracias totales al Profe Nico y a los compañeros sin cuyos aportes no lo habría logrado!!
Aquí esta mi app. Me hace muy feliz ❤️
Tuve un problemas por que tenia un require de nodemon en el index.js, lo comente y listo aqui esta mi deploy.
Hola como estan tambien es muy facil hacer deployment con:
render
Si alguien le interesa a mi me funciono super bien https://railway.app/
es super simple tiene un buen rendimiento para la opcion trial
deploy de proyecto de node en HEROKU
¿De momento estará muy mal dejar el CORS para todas las direcciones?
F, triste no poder terminar el curso
Excelente curso.
[<My API> ](https://api-express-shop.up.railway.app/)
Lo desplegue en railway.
Mission Complete!!! https://platzinodejs-production.up.railway.app/
Aquí lo hice en railway:
devbeex
El video que alguien recomendo en comentarios para hacerlo:
Deploy con railway en nodejs
Ya que heroku no tiene habilitado un servicio gratuito, una buena opción para el deploy es Railway
me guso mucho el curso pero tendre que poner 1 estrella hasta que arreglen la clase de heroku porque no tengo el dinero como para pagarlo
creo que este video igual que el anterior no va aqui, estoy confundido 😕
Mis apuntes y anotaciones
https://open-alibi-205.notion.site/Node-js-API-REST-63810a07195e4023954203ce177696c6
Listo ! Completado ! https://arcane-temple-03350.herokuapp.com/api/v1/products
Hecho! My App
Muy buen curso, creo que es el mejor de los que he hecho en platzi hasta este momento
Hecho. De los mejores cursos
INCREÍBLE
Aquí está mi primera app en un entorno productivo!!!
excelente despliegue
Ya quedo el server!!
Me encanto todo este curso. He aquí mi deploy: https://git.heroku.com/store-express-greg.git
si en produccion te marca que no esta permitido en el whitelist concatenale el puerto dinamico
Sii, que buen curso!! Por fin pude aprender hacer una api para los proyectos que vaya haciendo en Platzi!!
Best Curso Ever
Mi api Le agregué swagger para que sea mas facil de usar
Sumamente contento, un curso muy completo
https://obscure-tor-00334.herokuapp.com
listo, completado!! Mi API
Listo mi deploy
Como cuando no puedo hacer esta clase porque olvide mi contraseña de admin de Ubuntu 🙃🙃🙃
Excelente todo lo aprendido en este curso, tuve un pequeño error pero era por tener instalado faker en modo de desarrollo y no haber cambiado un archivo en producción con el required, luego de leer el log como me indicaba heroku pude resolverlo y ya tengo mi app corriendo!
Igual ya lo he logrado, Aquí mi App
Perfecto ya tengo la aplicación corriendo en heroku =>
app_node_store
Si estás usando macOs Monterey y al lanzar heroku local web te sale el siguiente error: Error: listen EADDRINUSE: address already in use :::5000, el problema es que ese puerto está siendo utilizado por sharing, y es el que está intentando utilizar heroku, para solucionarlo, hay que ir a System Preferences > sharing, y desactivalo, eso me funcionó a mi.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?