Bibliothèque cliente Azure WebJobs Web PubSub pour .NET - version 1.7.0
Cette extension fournit des fonctionnalités pour recevoir des appels webhook Web PubSub dans Azure Functions, ce qui vous permet d’écrire facilement des fonctions qui répondent à n’importe quel événement publié sur Web PubSub.
Code source | Package | Documentation de référence de l’API | Documentation du produit | Exemples
Prise en main
Installer le package
Installez l’extension Web PubSub avec NuGet :
dotnet add package Microsoft.Azure.WebJobs.Extensions.WebPubSub
Prérequis
Vous devez disposer d’un abonnement Azure et d’un groupe de ressources Azure avec une ressource Web PubSub. Suivez ce tutoriel pas à pas pour créer un instance Azure Web PubSub.
Authentifier le client
Pour que l’extension fonctionne avec le service Azure Web PubSub, vous devez fournir un .ConnectionString
Vous trouverez les clés du service Azure Web PubSub dans le portail Azure.
La AzureWebJobsStorage
chaîne de connexion est utilisée pour conserver les informations de point de contrôle de traitement requises en référence aux considérations relatives au stockage
Pour le développement local, utilisez le local.settings.json
fichier pour stocker la chaîne de connexion, <connection-string>
peut être défini sur WebPubSubConnectionString
par défaut pris en charge dans l’extension, ou vous pouvez définir des noms personnalisés en le mappant avec Connection = <connection-string>
dans les attributs de liaison de fonction :
{
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"<connection-string>": "Endpoint=https://<webpubsub-name>.webpubsub.azure.com;AccessKey=<access-key>;Version=1.0;"
}
}
Lors du déploiement, utilisez les paramètres de l’application pour définir la chaîne de connexion.
Concepts clés
Utilisation de la liaison d’entrée Web PubSub
Suivez le tutoriel de liaison d’entrée pour en savoir plus sur l’utilisation de cette extension pour la génération WebPubSubConnection
afin de créer une connexion Websockets au service avec une liaison d’entrée.
Utilisation de la liaison de sortie Web PubSub
Suivez le tutoriel de liaison de sortie pour en savoir plus sur l’utilisation de cette extension pour la publication de messages Web PubSub.
Utilisation du déclencheur Web PubSub
Suivez le tutoriel de liaison de déclencheur pour en savoir plus sur le déclenchement d’une fonction Azure lorsqu’un événement est envoyé à partir de amont de service.
Dans Connect
les événements et UserEvent
, la fonction respecte les valeurs de retour pour renvoyer le service. Ensuite, le service dépend de la réponse pour poursuivre la demande ou bien. Les réponses et les événements sont associés. Par exemple, Connect
respecte ConnectEventResponse
uniquement ou EventErrorResponse
, et ignore les autres retours. Quand EventErrorResponse
est retourné, le service supprime la connexion cliente. Suivez le tutoriel sur la valeur de retour de liaison de déclencheur pour en savoir plus sur l’utilisation de la valeur de retour du déclencheur.
Exemples
Fonctions qui utilisent la liaison d’entrée Web PubSub
public static class WebPubSubConnectionBindingFunction
{
[FunctionName("WebPubSubConnectionBindingFunction")]
public static WebPubSubConnection Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req,
[WebPubSubConnection(Hub = "hub", UserId = "{query.userid}", Connection = "<connection-string>")] WebPubSubConnection connection)
{
Console.WriteLine("login");
return connection;
}
}
Fonctions qui utilisent la liaison de sortie Web PubSub
public static class WebPubSubOutputBindingFunction
{
[FunctionName("WebPubSubOutputBindingFunction")]
public static async Task RunAsync(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req,
[WebPubSub(Hub = "hub", Connection = "<connection-string>")] IAsyncCollector<WebPubSubAction> action)
{
await action.AddAsync(WebPubSubAction.CreateSendToAllAction("Hello Web PubSub!", WebPubSubDataType.Text));
}
}
Fonctions qui utilisent le déclencheur Web PubSub
public static class WebPubSubTriggerFunction
{
[FunctionName("WebPubSubTriggerFunction")]
public static void Run(
ILogger logger,
[WebPubSubTrigger("hub", WebPubSubEventType.User, "message")] UserEventRequest request,
string data,
WebPubSubDataType dataType)
{
logger.LogInformation("Request from: {user}, data: {data}, dataType: {dataType}",
request.ConnectionContext.UserId, data, dataType);
}
}
Fonctions qui utilisent la valeur de retour du déclencheur Web PubSub
public static class WebPubSubTriggerReturnValueFunction
{
[FunctionName("WebPubSubTriggerReturnValueFunction")]
public static UserEventResponse Run(
[WebPubSubTrigger("hub", WebPubSubEventType.User, "message")] UserEventRequest request)
{
return request.CreateResponse(BinaryData.FromString("ack"), WebPubSubDataType.Text);
}
}
Dépannage
Reportez-vous à Monitor Azure Functions pour obtenir des conseils de résolution des problèmes.
Étapes suivantes
Lisez l’introduction d’Azure Function ou la création d’un guide de fonction Azure.
Contribution
Consultez notre CONTRIBUTING.md pour plus d’informations sur la création, le test et la contribution à cette bibliothèque.
Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, consultez cla.microsoft.com.
Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.
Azure SDK for .NET