Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este inicio rápido se muestra cómo crear un recurso de Web PubSub para Socket.IO e incorporarlo rápidamente en la aplicación de Socket.IO para simplificar el desarrollo, acelerar la implementación y lograr escalabilidad sin complejidad.
El código que se muestra en este inicio rápido está en CommonJS. Si desea usar un módulo ECMAScript, consulte la demostración de chat para Socket.IO con Azure Web PubSub.
Importante
Las cadenas de conexión sin procesar solo aparecen en este artículo con fines de demostración.
Una cadena de conexión incluye la información de autorización necesaria para que la aplicación acceda al servicio Azure Web PubSub. La clave de acceso dentro de la cadena de conexión es similar a una contraseña raíz para el servicio. En entornos de producción, proteja siempre las claves de acceso. Use Azure Key Vault para administrar y rotar las claves de forma segura y proteja la conexión con WebPubSubServiceClient.
Evite distribuirlas a otros usuarios, codificarlas de forma rígida o guardarlas en un archivo de texto sin formato al que puedan acceder otros usuarios. Rote sus claves si cree que se han puesto en peligro.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. En caso de no tener ninguna, puede crear una gratis.
- Conocimientos de la biblioteca de Socket.IO.
Creación de un recurso de Web PubSub para Socket.IO
Para crear un recurso de Web PubSub para Socket.IO, puede usar este botón de un solo clic para crear o seguir las acciones siguientes para buscar en Azure Portal.
Use el botón siguiente para crear un recurso de Web PubSub para Socket.IO en Azure
Búsqueda desde la barra de búsqueda de Azure Portal
Vaya a Azure Portal.
Busque socket.io, en la barra de búsqueda y seleccione Web PubSub para Socket.IO.
Búsqueda desde Marketplace
Vaya a Azure Portal.
Seleccione el botón Crear un recurso de la esquina superior izquierda de Azure Portal. Escriba socket.io en el cuadro de búsqueda y presione Entrar. Seleccione Web PubSub para Socket.IO en el resultado de la búsqueda.
Haga clic en Crear en la página emergente.
Envío de mensajes con bibliotecas de Socket.IO y Web PubSub para Socket.IO
En los pasos siguientes, creará un proyecto de Socket.IO y realizará la integración con Web PubSub para Socket.IO.
Inicializar un proyecto Node e instalar los paquetes necesarios
mkdir quickstart
cd quickstart
npm init
npm install @azure/web-pubsub-socket.io socket.io-client
Escribir código de servidor
Cree un archivo server.js y agregue el código siguiente para crear un servidor Socket.IO e integrarlo con Web PubSub para Socket.IO.
Las cadenas de conexión sin procesar solo aparecen en este artículo con fines de demostración. En entornos de producción, proteja siempre las claves de acceso. Use Azure Key Vault para administrar y rotar las claves de forma segura y proteja la conexión con WebPubSubServiceClient.
/*server.js*/
const { Server } = require("socket.io");
const { useAzureSocketIO } = require("@azure/web-pubsub-socket.io");
let io = new Server(3000);
// Use the following line to integrate with Web PubSub for Socket.IO
useAzureSocketIO(io, {
hub: "Hub", // The hub name can be any valid string.
connectionString: process.argv[2]
});
io.on("connection", (socket) => {
// Sends a message to the client
socket.emit("hello", "world");
// Receives a message from the client
socket.on("howdy", (arg) => {
console.log(arg); // Prints "stranger"
})
});
Escribir código de cliente
Cree un archivo client.js y agregue el código siguiente para conectar el cliente con Web PubSub para Socket.IO.
/*client.js*/
const io = require("socket.io-client");
const socket = io("<web-pubsub-socketio-endpoint>", {
path: "/clients/socketio/hubs/Hub",
});
// Receives a message from the server
socket.on("hello", (arg) => {
console.log(arg);
});
// Sends a message to the server
socket.emit("howdy", "stranger")
Cuando se usa Web PubSub para Socket.IO, se requieren <web-pubsub-socketio-endpoint> y path para que el cliente se conecte al servicio.
<web-pubsub-socketio-endpoint> y path pueden encontrarse en Azure Portal.
Vaya al panel clave de Web PubSub para Socket.IO
Escriba el nombre del centro y copie el punto de conexión de cliente y la ruta de acceso de cliente
Ejecución de la aplicación
Ejecute la aplicación del servidor:
node server.js "<connection-string>"<connection-string>es la cadena de conexión que contiene el punto de conexión y las claves para acceder al recurso de Web PubSub para Socket.IO. También puede encontrar la cadena de conexión en Azure Portal
Ejecute la aplicación cliente en otro terminal:
node client.js