Sdílet prostřednictvím


Klientská knihovna služby Azure Web PubSub pro .NET

Azure Web PubSub Service je služba spravovaná v Azure, která vývojářům pomáhá snadno vytvářet webové aplikace s funkcemi v reálném čase a vzorem publikování a odběru. Jakýkoli scénář, který vyžaduje zasílání zpráv publikování a odběru v reálném čase mezi servery a klienty nebo mezi klienty, může používat službu Azure Web PubSub. Tradiční funkce v reálném čase, které často vyžadují dotazování ze serveru nebo odesílání požadavků HTTP, můžou také používat službu Azure Web PubSub.

Tuto knihovnu můžete použít na straně aplikačního serveru ke správě připojení klienta WebSocket, jak je znázorněno na následujícím diagramu:

The overflow diagram shows the overflow of using the service client library.

Pomocí této knihovny můžete:

  • Odesílání zpráv do center a skupin
  • Odesílání zpráv konkrétním uživatelům a připojením
  • Uspořádejte uživatele a připojení do skupin.
  • Zavření připojení
  • Udělení, odvolání a kontrola oprávnění pro existující připojení

Referenční dokumentace k rozhraní API balíčku | zdrojového kódu | – Ukázky produktové dokumentace | |

Začínáme

Nainstalujte balíček .

Nainstalujte klientskou knihovnu z NuGetu:

dotnet add package Azure.Messaging.WebPubSub

Předpoklady

Vytvoření a ověření WebPubSubServiceClient

Abyste mohli pracovat se službou, budete muset vytvořit instanci WebPubSubServiceClient třídy. K tomu budete potřebovat připojovací řetězec nebo klíč, ke kterému máte přístup na webu Azure Portal.

var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));

Příklady

Vysílání textové zprávy všem klientům

var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));

serviceClient.SendToAll("Hello World!");

Vysílání zprávy JSON všem klientům

var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));

serviceClient.SendToAll(RequestContent.Create(
        new
        {
            Foo = "Hello World!",
            Bar = 42
        }),
        ContentType.ApplicationJson);

Vysílání binární zprávy všem klientům

var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));

Stream stream = BinaryData.FromString("Hello World!").ToStream();
serviceClient.SendToAll(RequestContent.Create(stream), ContentType.ApplicationOctetStream);

Řešení problému

Nastavení protokolování konzoly

Protokolování konzoly můžete povolit také v případě, že se chcete podrobněji podívat na požadavky, které provádíte ve službě.

Další kroky

Pomocí těchto prostředků můžete začít vytvářet vlastní aplikaci: