Websockets con Node.js

Поделиться
HTML-код
  • Опубликовано: 4 дек 2024

Комментарии • 56

  • @devve7
    @devve7 2 года назад +2

    Perfecto !! Excelente trabajo Jacob, profesionalmente explicado y no deja lugar a dudas.

  • @adrianglavan1898
    @adrianglavan1898 3 года назад +1

    Muchas gracias excelente tutorial, un fuerte saludo.

  • @pluces
    @pluces 2 года назад +1

    Buen tutorial,
    bastante claro

  • @rainbow-jw3og
    @rainbow-jw3og 2 года назад +1

    Hola Jacob, gracias por el tutorial, si yo necesitaria el primer y ultimo elemento de una response de una API websocket, se trae como si fuera una API Rest igual? con las posiciones 0 para el primero por ejemplo.

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  2 года назад +2

      Hola Rainbow, en la configuración de la respuesta que haces para el websocket tu podrías enviar un objeto JSON como en los API Rest, dado que la respuesta es un texto, entonces podrías serializar el JSON y posteriormente al recibirlo volver al deserializar con las funciones: JSON.stringify y JSON.parse

  • @josys944
    @josys944 19 дней назад +1

    Buenas tardes, y si tengo un dashbord en node, pero quiero colocarle websocket, como haria en ese caso para comunicarme con el cliente?????

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  13 дней назад

      Al usar sockets la conexión entre el cliente y el servidor es cerrada, en tiempo real, síncrona.
      Por que quisieras hacerlo para un dashboard?
      Ahí tal vez la comunicación por sockets podría ser entre el dashboard y las fuentes de datos que alimentan ese dashboard, no?

  • @victorabrahamperezsanchez152
    @victorabrahamperezsanchez152 Год назад +1

    buen día, excelente tutoría solo que me marca in error y deseaba ver si me podía ayudar y es que cada vez que intento ingresar con el localhost:3000 me aparece en el buscador Cannot GET /

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  Год назад

      Hola, Ese más bien es el mensaje que indica que no has redireccionado a la página de inicio. El mensaje es correcto si aún no has completado la parte que se muestra en la línea 11 del index.js, la cual redirecciona al archivo index.html

  • @cristiandavidcardonavasquez
    @cristiandavidcardonavasquez 2 года назад +1

    excelente tu video, como podrida adaptar el codigo para que el servidor WebSocket quede similar a una API, es decir las solicitudes del cliente separado. lo otro podrida hacer que ese servicio socket inicie automáticamente en el servidor donde se va estar ejecutando (ya que este estaría montado en windows)

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  2 года назад

      Hola Cris19n, el esquema de websockes a diferencia de una API Rest es que permite una conexión en tiempo real entre el cliente y el servidor. En una Api, haces las peticiones y esperas respuesta, al concluir la respuesta, la conexión ha terminado hasta que llegue otra petición. Para el caso de websockets la conexión permanece activa, haya o no peticiones desde el cliente. Para el caso que comentas, ¿Qué es el servidor? y ¿qué es el cliente? para ver si me doy una idea de como implementar los websockes a manera de API

    • @cristiandavidcardonavasquez
      @cristiandavidcardonavasquez 2 года назад +1

      @@jacobavilacamacho7644 ya he estado revisando, realmente no necesito web socket, sería solamente una API en nodeJS, que me arroje el resultado actual de la báscula (indicador de pesaje) cada que el cliente ( js) haga la petición a la API, por ejemplo atravesar de un evento click.

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  2 года назад +1

      @@cristiandavidcardonavasquez Exacto, para ese caso no requieres que sea con websockets. La API la puedes crear con express en Node.js

  • @guerrero4833
    @guerrero4833 Год назад +1

    Profe, una consulta. Como puedo integrar este websocket en node.js a una api rest echa en laravel. Agradezco si me responde

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  Год назад

      Hola.
      Si ya tienes la API en Laravel que es php, si el websocket va a ser el frontend, este podría hacer llamadas a la API; pero ahí ya no es comunicación en tiempo real en vivo

  • @magallanestv5790
    @magallanestv5790 2 года назад +1

    HOLA Jacob Avila Camacho TIENES UNA FORMA DE COMUNICARME CON USTED

  •  3 года назад +1

    Gracias!!

  • @nelsoneljadue7119
    @nelsoneljadue7119 3 года назад +1

    Si solo quiero crear una página como servidor o sea que escuche todo lo que entra a un puerto determinado y lo muestre en mi página local que debería hacer?

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      Ahí además de la página debería estar corriendo un proceso que habilite los sockets para escuchar en el puerto que definas y lo mande a la página. Podría ser independiente de la página inicial o podrías crearlo con JS en node

  • @AntonyMeca
    @AntonyMeca Год назад +1

    hola estoy tratando de comunicar mi cliente con mi servidor para hacer un chat. Localmente no tuve ningun problema pero cuando lo subo al servidor por protocolo https no funciona, busque informacion y gener los dos archivos de ssl pero obtengo un error net::ERR_SSL_VERSION_OR_CIPHER_MISMATCH

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  Год назад

      Como estas generando los archivos del certificado y con que extensión quedan?

  • @EmmaGModesto
    @EmmaGModesto 3 года назад +1

    Excelente vídeo! Disculpa, como puedo enviar 2 datos? Intenté con dos valores en la función doSend(id, message) pero solo ocupa el primero valor y el otro lo pone como undefined :/ es posible enviar un JSON? Y de que forma? Intenté igual como en tu blog pero no entendí del todo ya que envía a varias funciones y no sé si se pierde, espero pueda contestar, gracias por su vídeo, me está sirviendo mucho! :D

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад +1

      Hola, Si sólo es el parámetro message, entonces puedes enviar un objeto json don dos o más variables en el mensaje como string y al recibir ese string lo puedes parsear a JSON nuevamente

  • @pablomartinez848
    @pablomartinez848 3 года назад +1

    Muy bueno!!
    como podría conectarlo con mysql?

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      Si claro, se puede conectar Node.js con MYSQL utilizando el driver, el cual instalas con npm install mysql

  • @rayoseldev819
    @rayoseldev819 2 года назад +1

    Hola, al subir el server a una VPN o un server ajeno a localhost, hay problemas de conexión que no me autirozan...no veo nada sobre eso, algún consejo?

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  2 года назад

      Hola, si para poderlo acceder desde otro dominio hay que abrir el puerto que usa el Websocket y determinar si el acceso es sólo para las IPs definidas o para cualquiera

    • @rayoseldev819
      @rayoseldev819 2 года назад +1

      @@jacobavilacamacho7644 Pues he quemado todo el día, y nada...ni abriendo puertos >.<
      Me pide conexión wss pero entonces no conecta. Y he abierto puertos y tal, voy con nginx...no se si sabes algo porque todo lo que encuentro me falla

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  2 года назад

      @@rayoseldev819 Ya probaste si no es problema del crosscripting dado que usas un dominio distinto

    • @rayoseldev819
      @rayoseldev819 2 года назад +1

      @@jacobavilacamacho7644 No pude solucionarlo...Al final decidí hacerlo en nativo :(

    • @rayoseldev819
      @rayoseldev819 2 года назад +1

      @@jacobavilacamacho7644 la verdad es que no tengo ni idea...debe ser algo del HTTPS, porque si no valido la web con HTTPS todo correcto. La valido desde NGINX, haciendo de proxy y nada..al final he tirado a bajo nivel sin librerías, pero me ha fastidiado un poco de tiempo >.

  • @petaca39
    @petaca39 3 года назад +1

    hola buen video consulta como seria la aplicación real del servidor en un hosting www es decir solamente subís todo por medio de un ftp y listo o hay algún paso previo ya que lo probé en mi pc funciona bien en el local host pero al subirlo a la www del hosting no me funciona alguna idea o hay algún paso previo antes de subirlo al servidor desde ya gracias

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      Hola, necesitas ver si el servidor de hosting tiene Node.js, sino, la opción es ingresar por SSH e instalarlo. Si no tienes acceso por SSH al servidor, checar con el proveedor si es posible que ellos te lo instalen y este incluido en el servicio

  • @darwin1436
    @darwin1436 3 года назад +1

    hola estoy implementando el websocket para que sea asíncrono mis interfaces (html,angularJS). pero al enviar el mensaje me salta que doSend no esta definido

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад +2

      Hola doSend en una función que implemento en el archivo javascript del lado del cliente, es decir en la carpeta public/js esta el archivo funciones.js y ahí esta la función doSend que tiene lo siguiente:
      function doSend(message) {
      console.log("Enviando: " + message);
      websocket.send(message);
      }

    • @darwin1436
      @darwin1436 3 года назад +1

      @@jacobavilacamacho7644 Gracias he encontrado el Error que tenia. si tengo varios clientes ellos podrán ver el mensaje que yo envié? tengo un cliente conectado a mi equipo por medio de la ip pero le lanza error: undefined (websocket connection)
      Edit: ya he solucionado no lanza error al equipo (cliente) pero el mensaje que yo envié solo lo recibo yo, igualmente el mensaje que el cliente envié solo lo recibe el.

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      @@darwin1436 Hola Darwin, si, cada cliente que se conecta al servidor abre una conexión de socket independiente. Por lo que cada mensaje enviado es a un socketClient nada más. Para enviar mensajes a todos, podrías crear un arreglo global y cuando llega una conexión, el ws lo agregas al arreglo, luego en la función para enviar mensaje, metes un ciclo para recorrer el arreglo y enviarselo a uno por uno de los clientes

  • @andresalfonsotapiamanjarre1732
    @andresalfonsotapiamanjarre1732 3 года назад +1

    npm notice created a lockfile as package-lock.json. You shouldnpm WARN WEBSOCKETS@1.0.0 No description
    npm WARN WEBSOCKETS@1.0.0 No repository field.
    me aparece eso y no se que será

  • @NovatoWTF
    @NovatoWTF 3 года назад +1

    Debes, apreder los codigos mas modernos de js, por ejemplo, Var! Ya no es una buena opcion de declaracion. ,😌. Pero todo bien.

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      Hola, Gracias por tu consejo. Si utilizo let y const, pero var es similar a let y no necesarimente, desde mi punto de vista, se deja de usar. Saludos

    • @NovatoWTF
      @NovatoWTF 3 года назад +1

      @@jacobavilacamacho7644 Denada, lo que pasa es que Let esa solucion a algunos problemas que causa : Var a beses no es bueno ignorar algunas cosas. Pero seria bueno que hagasbun video sobre las razones de por que usar var, en la actualidad, 🤗

    • @NovatoWTF
      @NovatoWTF 3 года назад +2

      Tambien, te recomiendo que cada ves que hagas un tutorial, muestres un previews de lo que vamos hacer, Para los videos es miy importante la organizacion para que no te quedes pensando que hacer detras de cada paso.
      Esto funcina :
      Te dire algunos metodos, quisas a estas haciendo la mayoria.
      Estos :
      1 - Has un guion para que no te trabes.
      2 - Antes de enseñar como hacer un proyecto, Ya debes haberlo hecho de anteMano, asi Ya lo haras mas rapido y facil.
      2 - Trabaja mas en la edicion de la voz , que en la de video, pero si logras no trabarte tanto, solo tendras que limpiar el audio y un arreglo, se puede hacer con AudaCity si no lo usas. O con el mismo editor de video.
      3 - En tus miniaturas de los videos pon el proyecto que vas hacer, en lo personal no me gusta verlo en codigo.
      4 - Se un poco mas breve.
      Estos son consejos para RUclips bro, es lo que hago y veo que hacen los mas grande.
      Para que veas un ejemplo de Organizacion y edicion, necesito que veas un video de ( Fazt Code ). Es bueno ver a los mas biejos en youtube.
      Perdon, 😌, aun solo soy estudiante en Desarrollo web. Pero, tu me enseñas mas y a acambio te ayudo en youtube. Siquieres.

    • @jacobavilacamacho7644
      @jacobavilacamacho7644  3 года назад

      @@NovatoWTF Si, buena idea. Lo vamos a justificar, en que casos se podría usar var sin problema

    • @NovatoWTF
      @NovatoWTF 3 года назад +1

      @@jacobavilacamacho7644 💜💜