Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten przewodnik Szybki start pokazuje, jak utworzyć zasób Web PubSub dla Socket.IO i szybko zintegrować go z aplikacją Socket.IO, aby uprościć tworzenie aplikacji, przyspieszyć wdrażanie i uzyskać skalowalność bez zbędnej złożoności.
Kod przedstawiony w tym przewodniku Szybki start jest napisany w standardzie CommonJS. Jeśli chcesz użyć modułu ECMAScript, zobacz pokaz czatu dla Socket.IO z usługą Azure Web PubSub.
Ważne
Nieprzetworzone parametry połączenia są wyświetlane tylko w tym artykule w celach demonstracyjnych.
parametry połączenia zawiera informacje autoryzacyjne potrzebne Twojej aplikacji, aby uzyskać dostęp do usługi Azure Web PubSub. Klucz dostępu w parametry połączenia działa jak hasło root dla Twojej usługi. W środowiskach produkcyjnych zawsze chroń klucze dostępu. Użyj usługi Azure Key Vault, aby bezpiecznie zarządzać kluczami i obracać je oraz zabezpieczać połączenie za pomocą usługi WebPubSubServiceClient.
Unikaj dystrybuowania kluczy dostępu do innych użytkowników, kodowania ich lub zapisywania ich w dowolnym miejscu w postaci zwykłego tekstu, który jest dostępny dla innych użytkowników. Obracanie kluczy, jeśli uważasz, że mogły one zostać naruszone.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz, możesz utworzyć bezpłatne konto.
- Znajomość biblioteki Socket.IO.
Tworzenie usługi Web PubSub dla zasobu Socket.IO
Aby utworzyć usługę Web PubSub dla Socket.IO, możesz użyć poniższego przycisku tworzenia jednym kliknięciem lub wykonać poniższe czynności, aby wyszukać ją w portalu Azure.
Użyj poniższego przycisku, aby utworzyć zasób Web PubSub for Socket.IO w Azure
Wyszukaj za pomocą paska wyszukiwania w portalu Azure
Przejdź do portalu Azure Portal.
Wyszukaj socket.io na pasku wyszukiwania, a następnie wybierz pozycję Web PubSub dla Socket.IO.
Szukaj w Marketplace
Przejdź do portalu Azure Portal.
Wybierz przycisk Utwórz zasób znajdujący się w lewym górnym rogu witryny Azure Portal. Wpisz socket.io w polu wyszukiwania i naciśnij Enter. Wybierz pozycję Web PubSub dla Socket.IO w wynikach wyszukiwania.
Kliknij Utwórz w wysuwanym panelu.
Wysyłanie komunikatów za pomocą bibliotek Socket.IO i web pubSub dla Socket.IO
W poniższych krokach utworzysz projekt Socket.IO i zintegrujesz się z usługą Web PubSub dla Socket.IO.
Inicjowanie projektu Node i instalowanie wymaganych pakietów
mkdir quickstart
cd quickstart
npm init
npm install @azure/web-pubsub-socket.io socket.io-client
Pisanie kodu serwera
server.js Utwórz plik i dodaj następujący kod, aby utworzyć serwer Socket.IO i zintegrować go z usługą Web PubSub dla Socket.IO.
Nieprzetworzone parametry połączenia są wyświetlane tylko w tym artykule w celach demonstracyjnych. W środowiskach produkcyjnych zawsze chroń klucze dostępu. Użyj usługi Azure Key Vault, aby bezpiecznie zarządzać kluczami i obracać je oraz zabezpieczać połączenie za pomocą usługi 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"
})
});
Pisanie kodu klienta
client.js Utwórz plik i dodaj następujący kod, aby połączyć klienta z usługą Web PubSub dla 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")
Gdy używasz usługi Web PubSub dla Socket.IO, <web-pubsub-socketio-endpoint> i path są wymagane, aby klient mógł połączyć się z usługą. Element <web-pubsub-socketio-endpoint> i path można znaleźć w witrynie Azure Portal.
Przejdź do bloku klucza usługi Web PubSub dla Socket.IO
Wpisz nazwę hubu i skopiuj punkt końcowy klienta oraz ścieżkę klienta
Uruchom aplikację
Uruchom aplikację serwera:
node server.js "<connection-string>"<connection-string>to ciąg połączenia zawierający punkt końcowy i klucze umożliwiające uzyskiwanie dostępu do zasobu Web PubSub for Socket.IO. Parametry połączenia można również znaleźć w witrynie Azure Portal
Uruchom aplikację kliencka w innym terminalu:
node client.js