Debes iniciar sesión

Para ver esta clase crea una cuenta sin costo o inicia sesión

Creando tu primer servidor

3/42

Para crear un servidor Express básico es necesario crear una carpeta para el proyecto, inicializar npm en este directorio e instalar Express.js como la primera dependencia de nuestro proyecto: npm i -S express. Seguidamente creamos el index.js con el código básico para requerir y ejecutar el servidor y la ruta base de nuestra aplicación.

Con el método .listen inicializamos nuestro server en el puerto que elijamos. Este método devuelve el servidor como un objeto, que luego podemos utilizar para hacer un log con información que se mostrará por consola.

En el archivo package.json definimos el script con el que arrancaremos nuestro server, el cual ejecutará la instrucción node index, adicionalmente podemos definir un script para desarrollo en el que ejecutemos el index con nodemon que es una dependencia que ejecutará el servidor y actualizará su ejecución de manera automática cada vez que se hagan cambios en los archivos.

Finalmente con npm run dev iniciamos el servidor y estamos listos para ver los resultados en el navegador, ya sea como html o como JSON.

Recomiendo tener a mano la documentación oficial para averiguar más de express
http://expressjs.com/en/starter/hello-world.html

No es necesario inlcuir el -S , en las versiones recientes de npm esto es automatico

Recomiendo ir leyendo un poco sobre variables de entorno en caso de ser nuevos en el ecosistema de Node para no usar valores por defecto como lo seria el puerto y mejor usar una variable de entorno

Es como amor a primera vista, promete mucho este curso.

Captura.PNG
Captura2.PNG

no vemos el enlace de github por favor lo pueden poner?

mmm

expectativa y motivación para este curso 10/10

Me encanto la primera lección.

Pa la otra suban la ventana de la consola arriba de la barra de reproduccion del video, no se alcanza a ver 😦

Ya no es necesario el -s
npm i [nombreModulo] = npm i express
es igual.

Interesante sería el instalar babel para que nuestro código funcionara con las últimas características de ES6

Tengo el siguiente error, Alguien sabe que onda?

npm i -S express
npm WARN [email protected]1.0.0 No description
npm WARN [email protected]1.0.0 No repository field.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected]1.2.4 (node_modules/fsevents):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/Applications/XAMPP/xamppfiles/htdocs/platzi master/express/primer-servidor/hello-world/node_modules/.staging/fsevents-47dd53a6/node_modules/abbrev' -> '/Applications/XAMPP/xamppfiles/htdocs/platzi master/express/primer-servidor/hello-world/node_modules/.staging/abbrev-ef28342f'

npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.2.tgz
npm ERR! 404 
npm ERR! 404  '[email protected]' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'hello-world'
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/carlosramirez/.npm/_logs/2020-04-15T03_47_55_205Z-debug.log

Excelente ya listo el server

.gitignore con un comando $ npx gitignore node

Comparto código del index.js

const express = require("express");
const app = express();

app.get("/", (req, res)=>{
    res.send({
        message: "Hello World!!!"
    });
});

const server = app.listen(8000, ()=>{
    console.info(`Listening on http://localhost:${server.address().port}`);
});

Excelente

¿cuál seria la forma correcta de implementar Express con serverless?

Excelente justo lo que necesitaba =) buena esa platzi

En ves de implementar una función tradicional ( que funciona perfectamente si la quieres usar ), podemos usar la arrow function de las nuevas actualizaciones de ecmascript, es más moderno y estandar

app.get("/", (req, res, next) => {
  res.send(
    "Hello Motherfucker, we ain't playin this shit  fealu, we goin hard homie"
  );
});

Primeros pasos
Para el desarrollo, utilizo Babel para transpilar el código al ECMAScript moderno.
Babel, me permite adaptar las necesidades de mi backend para optimizar el desarrollo:

  • @babel/core @babel/cli @babel/preset-env, elementos básicos para el desarrollo general de JS.
  • @babel/node @babel/polyfill, me permiten transpilar código ES6++ para nodejs y utilizar promesas, entre otras librerías, respectivamente.
  • @babel/plugin-transform-runtime, para optimizar el tamaño de los códigos y el garbarge.
  • dotenv, para configurar las variables de entorno y tener un mejor XD (Development experience).
    Notaran que se contempla, dependiendo de su ámbito, el uso de las dependencias para el desarrollo o prod.
> mkdir project-backend && cd project-backend
# Installing basics dependencies
> npm init -y && npm i express && npm i -D nodemon
# Installing babel dependencies
> npm i -D @babel/core @babel/cli @babel/preset-env @babel/node && npm i @babel/polyfill
> npm i -D @babel/plugin-transform-runtime && npm i @babel/runtime
# Other dependencies
> npm i -D dotenv

También puedes ir guardando tu puerto en una variable de entorno, y manejarlo dinámicamente

Recomiendo tener a mano la documentación oficial para averiguar más de express
http://expressjs.com/en/starter/hello-world.html

No es necesario inlcuir el -S , en las versiones recientes de npm esto es automatico

Recomiendo ir leyendo un poco sobre variables de entorno en caso de ser nuevos en el ecosistema de Node para no usar valores por defecto como lo seria el puerto y mejor usar una variable de entorno

Es como amor a primera vista, promete mucho este curso.

Captura.PNG
Captura2.PNG

no vemos el enlace de github por favor lo pueden poner?

mmm

expectativa y motivación para este curso 10/10

Me encanto la primera lección.

Pa la otra suban la ventana de la consola arriba de la barra de reproduccion del video, no se alcanza a ver 😦

Ya no es necesario el -s
npm i [nombreModulo] = npm i express
es igual.

Interesante sería el instalar babel para que nuestro código funcionara con las últimas características de ES6

Tengo el siguiente error, Alguien sabe que onda?

npm i -S express
npm WARN [email protected]1.0.0 No description
npm WARN [email protected]1.0.0 No repository field.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected]1.2.4 (node_modules/fsevents):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/Applications/XAMPP/xamppfiles/htdocs/platzi master/express/primer-servidor/hello-world/node_modules/.staging/fsevents-47dd53a6/node_modules/abbrev' -> '/Applications/XAMPP/xamppfiles/htdocs/platzi master/express/primer-servidor/hello-world/node_modules/.staging/abbrev-ef28342f'

npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/flatmap-stream/-/flatmap-stream-0.1.2.tgz
npm ERR! 404 
npm ERR! 404  '[email protected]' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'hello-world'
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/carlosramirez/.npm/_logs/2020-04-15T03_47_55_205Z-debug.log

Excelente ya listo el server

.gitignore con un comando $ npx gitignore node

Comparto código del index.js

const express = require("express");
const app = express();

app.get("/", (req, res)=>{
    res.send({
        message: "Hello World!!!"
    });
});

const server = app.listen(8000, ()=>{
    console.info(`Listening on http://localhost:${server.address().port}`);
});

Excelente

¿cuál seria la forma correcta de implementar Express con serverless?

Excelente justo lo que necesitaba =) buena esa platzi

En ves de implementar una función tradicional ( que funciona perfectamente si la quieres usar ), podemos usar la arrow function de las nuevas actualizaciones de ecmascript, es más moderno y estandar

app.get("/", (req, res, next) => {
  res.send(
    "Hello Motherfucker, we ain't playin this shit  fealu, we goin hard homie"
  );
});

Primeros pasos
Para el desarrollo, utilizo Babel para transpilar el código al ECMAScript moderno.
Babel, me permite adaptar las necesidades de mi backend para optimizar el desarrollo:

  • @babel/core @babel/cli @babel/preset-env, elementos básicos para el desarrollo general de JS.
  • @babel/node @babel/polyfill, me permiten transpilar código ES6++ para nodejs y utilizar promesas, entre otras librerías, respectivamente.
  • @babel/plugin-transform-runtime, para optimizar el tamaño de los códigos y el garbarge.
  • dotenv, para configurar las variables de entorno y tener un mejor XD (Development experience).
    Notaran que se contempla, dependiendo de su ámbito, el uso de las dependencias para el desarrollo o prod.
> mkdir project-backend && cd project-backend
# Installing basics dependencies
> npm init -y && npm i express && npm i -D nodemon
# Installing babel dependencies
> npm i -D @babel/core @babel/cli @babel/preset-env @babel/node && npm i @babel/polyfill
> npm i -D @babel/plugin-transform-runtime && npm i @babel/runtime
# Other dependencies
> npm i -D dotenv

También puedes ir guardando tu puerto en una variable de entorno, y manejarlo dinámicamente