Conocer y comprender cómo se realizan las conexiones hacia los servidores a través de internet y sus implicaciones en el desarrollo de servidores
Bienvenida y presentación del curso
Qué es Node y cómo instalarlo
¿Qué son y cómo se usan las peticiones HTTP?
Métodos, cabeceras y estados
Cuerpo y query de la petición
Crear un servidor HTTP en Javascript, y comenzar a escuchar y responder peticiones desde un cliente .
Crear un servidor HTTP desde NodeJS
¿Cómo pueden venir las peticiones?
Recibir información desde el cliente: Body y Query
Información contextual: Leer las cabeceras
Tipos de respuesta: Vacía, plana, con datos y estructurada
Respuestas coherentes
Servir archivos estáticos
Errores: Cómo presentarlos e implicaciones en la seguridad
Comprender y desarrollar la arquitectura básica de un backend en NodeJS, y comunicarse entre módulos
Conceptualmente: Rutas, controladores y bases de datos
Rutas y capa de red: Responsabilidades y límites
Controladores: Definiendo la lógica de negocio
Almacenando la información en una base de datos
Utilizar una base de datos para definir, modelar, almacenar y recuperar la información de nuestra aplicación
Tipos de Bases de Datos: Relacionales y No Relacionales
Crear y Configurar tu Base de Datos con MongoDB
MongoDB: Almacenar y leer datos
MongoDB: Actualizar datos
MongoDB: Consultar datos
MongoDB: Eliminar Datos
Gestionar conexiones a la base de datos desde la API
Uso de entidades para crear aplicaciones escalables
Escalando la arquitectura: Múltiples entidades
Relacionando nuestras entidades
Cómo recibir ficheros desde NodeJS
Guardar el fichero en el servidor
Conocer el protocolo de websockets, e implementar comunicación cliente/servidor con SocketIO.
WebSockets: Qué son, por qué son interesantes y cómo usarlos
Manejo de Websockets con NodeJS
Conectar la API al servidor de WebSockets
Revisión de lo aprendido, y próximos pasos
Revisión y próximos pasos
Tips para escalar nuestro proyecto
Create an account or log in
Keep learning for free! Join and start boosting your career
HTTP methods:
The headers will be the sending to the server of how we want to make the request.
The states are numbers that indicate the state of the request:
Contributions 72
Questions 3
Sitios sugeridos que contienen informacion sobre los codigos de estado de peticion de HTTP:
GET: Recoger información del servidor.
Ejemplo: Información de un producto.
Listado de elementos(productos lista de chats)
ver una página traer un archivo css.
POST: Añadir información al servidor.
Ejemplo: Añadir un producto nuevo.
Enviar un formulario.
crear un nuevo chat.
PUT: Reemplazar información en el servidor.
Ejemplo: Cambiar el contenido de una página.
Reemplazar un producto por otro.
Editar un mensaje.
PATCH: Actualizar parte de la información.
Ejemplo:
Cambiar la foto de un usuario.
Modificar el precio de un producto.
DELETE: Eliminar información del servidor.
Ejemplo:
Eliminar un mensaje.
quitar un producto del carrito.
OPTIONS: Pedir información sobre métodos (saber si podemos ejecutar alguno de los métodos anteriores).
Ejemplo:
Saber si puedes ejecutar POST, PUT, PATCH o DELETE
Metodos:
-GET: recoger informacion del servidor:listas, traer archivos, css
-POST: añadir informacion
-PUT: reemplazar informacion: contenido de una pagina
PATCH: cuando queremos modificar solo una parte de la informacion
DELETE: eliminar informacion, productos del carrito por ejemplo.
OPTIONS: pedir informacion sobre metodos.
Saber si podemos ejecutar los anteriores
Cabeceras:
Nos dan informacion contextual de la petición: Como quiero hacerlo:
Request: Autenticacion,cache, indicaciones:
-Cookies: permiten compartir informacion entre peticiones, guardar info para mantener la sesion
-CORS: manejar informacion desde fuera de nuestro servidor, cuando consume informacion desde un lado externo
Access-Control-Allow-Origin, desde donde puedo consumir
-ACCEPT: Define el contenido que puede aceptar por ejem: codificacion UTF-8 archivos js
-Autenticacion: Para poder pedir cosas al servidor
-Cache: Almacenamiento temporal, gestionar durante cuanto tiempo la respuesta sera la misma, evita menos peticiones pues las almacena
-Estados: Numero que indica lo que paso con la peticion:
200: Ok
201-Crea
300- Redireccion de la peticion, por el recurso
400-40x Errores del cliente
500- Error interno del servidor
No cabe duda de que, Platzi, ha comprendido a su cliente (cursos individuales). Me encanta cuando te explican un tema a profundidad (resolver dudas).
Me encanta que explique estos conceptos tan importantes 😃
No conocía el método PACH y OPTIONS
Sin palabras, simplemente fue una gran clase.
Metodos: lo que se quiere realizar al servidor (
GET = cuando se quiere obtener infotrmacoins del servidor,
PUT = remplaza infoprcmacion en el servidor es decir actualizaciones,
DELETE = se elima informacion por completo,
POST = añadir infromacion al servidor ,
PATCH = Actualizacion por partes ,
OPTIONS = sirve pedir informacion de los metodos si se puedne ejecutar los metodos POST, PUT, PATCH o DELETE )
Cabeceras: informacion contextual de la peticion (no es lo que quiero hacer si no como lo quiero realizar)
-Request: el request púede ser POST, PUT, PATCH, Autentication, cache, condiciones, cors, cookies
-cookies = compartir informacion entre peticiones
-cors (cross Origin Resource Sharing) = compartir informacion afuera de nuestro servidor (Access-Control-Allow-Origin)
-accept: esta solo indica que contino va a aceptar (Accept, Accept-Charset, Accept-Encoding)
- Autenticación: se asegura que puedes realizar una solicitud al servidor (Authorization).
- Cache = gestiona por cuanto tiempo la respuesta sera la misma (Cache-Control, Expires)
Estados: indica con un numero lo que a pasado en la peticion.
200: ok
201: Created
Las que empiecen con 3 la peticion se redirigido
301: Moved permanently
304: Nor Modified
errores: del cliente
400: bag request
401: Unauthorized
403: Forbidden
404: nor found
errores: del servidor
500: ha habido algun problema interno
Dato curioso: Existe un código de error **“HTTP 418 Soy una tetera” **el cual indica que el servidor se rehúsa a preparar café porque es una tetera jajajaja.
Al parecer proviene de la creación de un protocolo de broma HTCPCP (Protocolo de Control de Cafeteras de Hipertexto) publicado el 1 de abril de 1998 en el día de los inocentes.
Mas info:
https://developer.mozilla.org/es/docs/Web/HTTP/Status/418
https://es.wikipedia.org/wiki/Hyper_Text_Coffee_Pot_Control_Protocol
HTTP es un protocolo con sesiones, pero sin estados, es decir que no guarda ningún dato entre dos peticiones en la mísma sesión.
Entonces para saber que dos peticiones tienen su origen en el mísmo navegador web de tal forma que nos permita mantener la sesión del usuario abierta se utilizan las cookie HTTP (cookie web o cookie de navegador).
Una cookie HTTP es una pequeña pieza de datos que un servidor envia a el navegador web del usuario. El navegador guarda estos datos y los envía de regreso junto con la nueva petición al mismo servidor.
Se utilizan principalmente para tres propósitos:
Para el almacenamiento general del lado del cliente se recomienda utilizar APIs modernas como localStorage, sessionStorage e IndexedDB ya que las cookies se envian con cada solicitud al servidor y esto puede empeorar el rendimiento.
GET - > Obtener información.
POST -> Añadir información al servidor.
PUT -> Editar Información.
DELETE -> Borrar Información.
PATCH -> Actualizar cierta parte dela información.
OPTIONS -> Pedir información sobre los métodos.
En la request:
Lo más interesante de todo es el tiempo implementado para explicar cada término
Aquí les dejo una explicación un poco más detallada de cómo se deben utilizar los códigos de estado.
https://adictec.com/codigos-de-estado-http/
GET recoger informacion del servidor - PUT remplaza informacion en el servidor y para editarlo- DELETE eliminar completamente infomarcion del servidor- POST añadir informacion al servidor- PATCH cuando no queremos editar todo el producto- OPTIONS con este podemos pedir informacion de que metodos podemos hacer en la api
Nos dan informacion contextual de la petición. No es lo que quiero hacer sino como puedo hacerlo.
Cookies => sirve para compartir informacion entre las peticiones.
CORS => Cross Origin Resource Sharing manejar informacion desde fuera de nuestro servicio.
Accept => define el contenido que se acepta.
Authorization => Asegurarse de que puedo pedir cosas al servidor.
Cache-Control o Expires => Gestionar dentro de cuanto tiempo la respuesta sera la misma.
Es un número que indica lo que a pasado con la petición.
2xx => que todo a hido bien por ejemplo 200 ok, 201 created
3xx => es que me redirecciona a otra parte por ejemplo 301 moved permanetly
4xx => error. 400: bad request. 401: unauthorized. 403: Forbidden prohibido se quien eres pero no te puedo dejar pasar comisario. 404: Not found.
5xx => errores de servidor. 500: Internal server error.
No se si lo abran compartido antes pero una pagina muy buena para ver estados
Pregunta de examen:
¿Qué método HTTP se usaría para cambiar la foto de un usuario?
Una pregunta! ¿De qué cache habla en el minuto 5:20?¿La caché del servidor o del usuario?
Los estados que empiecen con:
2xx = Todo OK.
3xx = Sucedió una redirección.
4xx = Errores de cliente.
5xx = ocurió un problema interno en el servidor
Es el verbo, la acción que le dice al server “lo que queremos hacer”
una web con los estados HTTP con memes de gatos
Muy buen profesor! Explica de una forma didáctica y sencilla.
Les comparto este archivo con un “cheat sheet” de los códigos HTTP
Archivo Códigos HTTP
METODOS:
*Get
*Put
*Delete
*Post
*Patch
*Options
-GET: recoger informacion
Cookies: Fichero de datos enviado a tu dispositivo (laptop,desktop, telefono, tablet), luego de llenado este fichero que es llenado (al momento de darle aceptar) es enviado al servidor. Entre los distintos usos de estas, esta recordar accesos y habitos de navegacion.
Cors: Utilizado para obtener permisos, para usar recursos seleccionados desde un servidor
ah caray mi profesore es benzema
Metodos:El que define a la petición la acción que queremos hacer
Get:Para retornar informacion del servidor
Post: Para agregar información nueva
Put: Para actualizar información
Patch: Para ediciones cortas
Delete: Para eliminar información
Options: saber si se puede ejecutar alguno de los métodos anteriores
A este punto ya se hizo el curso de prework y el curso anterior al de fundamentos de backend
Este tipo de clases siempre es bueno verlas para recordar o reforzar conocimientos en el tema
La notebook del profe es de una marca de computadoras creadas exclusivamente para usar con Linux !
Slimbook
Es el verbo que dice “lo que queremos hacer” con el servidor.
→ información de un producto
→ listado de elementos.
→ ver una pagina html o css
→ reemplazar un producto
→ editar un mensaje.
→eliminar un mensaje.
→eliminar un producto del carrito
→ añadir un producto
→ enviar un formulario.
→ cambiar la foto de un usuario
→ modificar el precio de un producto.
→saber si puedes ejecutar POST PUT PATCH O DELETE
Informacion contextual de la petición.
Es como quiero hacerlo, por ejemplo cabecera:
→authorization
→cache-Control, expires
→Access-Control-Allow, Origin
→cookie
→accept, accept-charset, accept-encoding
Son los numeros que indica que a pasado con la peticion.
Todo a ido bien
El recurso se a redirigido
Errores del cliente.
Ha habido un error al procesar la petición, error de servidor
Muy clara la clase
Excelente resumen introductorio de APIs
básicamente esos verbos son parecidos a los de postman
Que bien volver a ver sobre JWT…
Espero ampliar el conocimiento acerca de ellos
Cabeceras: Como quiero hacer la petición. Aprendí que las cookies son cabeceras
que excelente clase
¡Qué buena explicación!
Grupo de Whatsapp sobre temas relacionados a JS: https://chat.whatsapp.com/LsR1Zt77zIV2bUw30fMQ3M
excelente!
Excelente curso
Muy buena explicacion es muy sencillo y practico
pinta excelente este curso 😃 no como el de spring del cual vengo.
Métodos: Petición al servidor de lo que queremos hacer.
GET - > Obtener información.
POST -> Añadir información al servidor.
PUT -> Editar Información.
DELETE -> Borrar Información.
PATCH -> Actualizar cierta parte de la información.
OPTIONS -> Pedir información sobre los métodos.
BUENA EXPLICACIÓN NODE.JS
Básico para entender como funciona todo!
Muy bueno
con los CORS puedeo bloquear el web scraping?
Wow, muy buen clase!!
A pesar de ser conceptos conocidos es muy valiosa esta clase, siempre había sabido que los métodos PUT Y PATCH eran para editar información pero no sabia de la diferencias entre ambos, tampoco conocía la utilidad del método OPTIONS. Todo lo demás excelente también.
Que buena clase y bien resumido todo!
Vamo’alla 😄
HTTP tinene estas opciones:
GET
HEAD
POST
PUT
DELETE
TRACE
OPTIONS
CONNECT
PATCH
SEARCH
COPY
LOCK
UNLOCK
MOVE
MKCOL
PROPFIND
PROPPATCH
MERGE
UPDATE
LABEL
Cors
Cross Origin Resource Sharing
Estados:
2XX: Todo ha ido bien.
3XX: La petición se ha redirigido.
4XX: Errores del cliente.
5XX: Ha habido un error al procesar la petición.
los estados de las peticiones!
cabecera: no es lo que quiero hacer sino como lo quiero hacer
Super chevere esta clase.
Excelente contenido
Es el verbo que dice lo que queremos hacer al servidor.
Nos darán información contextual de la petición, el cómo quiero hacerlo.
son números que indica el estado de la petición:
GET sirve para obtener.
POST sirve para añadir (crear o insertar).
PUT sirve para reemplazar o actualizar información.
PATCH sirve para actualizar una parte de información. Como un parche.
DELETE sirve para eliminar información en el servidor.
OPTIONS sirve para pedir información sobre los métodos POST, PUT, PATCH o DELETE.
Excelente clase y excelente explicacion de parte del profesor!
GET: Obtener o Recoger Información.
POST: Añadir información.
PUT: Reemplazar Información en el Servidor.
PATCH: Actualizar parte de la información.
DELETE: Eliminar Información del Servidor.
OPTIONS: PEDIR Información sobre los Métodos.
la explicacion de profesor estuvo fue muy clara y muy bien explicada
GET - Recoger información del servidor
POST - Anadir información al servidor
PUT - Reemplazar información en el servidor
PATCH - Actualizar parte de la información
DELETE - Eliminar información del servidor
OPTIONS - Pedir información sobre los métodos
Información contextual de la petición. "No es el que quiero hacer, sino cómo lo quiero hacer"
Request - POST PUT PATCH
Números que indican lo que ha pasado con la petición
Todo ha ido bien 2XX
La petición se ha redirigido 3XX
Errores del cliente 4XX
Errores del servidor, ha habido un error al procesar la petición 5XX
Súper interesante, no sabia nada de los números, un tema interesante, mi pregunta es si nosotros programaos esos números o eso va programado internamente a la hora de subir o crear sitios y que generen este tipo de errores?
Want to see more contributions, questions and answers from the community?