MicrosoftIdentityHttpClientBuilderExtensions Klasse

Definition

Erweiterungsmethoden zum IHttpClientBuilder Hinzufügen MicrosoftIdentityMessageHandler zur HTTP-Clientpipeline mit verschiedenen Konfigurationsoptionen.

public static class MicrosoftIdentityHttpClientBuilderExtensions
type MicrosoftIdentityHttpClientBuilderExtensions = class
Public Module MicrosoftIdentityHttpClientBuilderExtensions
Vererbung
MicrosoftIdentityHttpClientBuilderExtensions

Beispiele

Grundlegende Verwendung mit Inlinekonfiguration:

services.AddHttpClient("MyApiClient", client =>
{
    client.BaseAddress = new Uri("https://api.example.com");
})
.AddMicrosoftIdentityMessageHandler(options =>
{
    options.Scopes.Add("https://api.example.com/.default");
});

Konfiguration von appsettings.json:

// In appsettings.json:
// {
//   "DownstreamApi": {
//     "Scopes": ["https://graph.microsoft.com/.default"]
//   }
// }

services.AddHttpClient("GraphClient")
    .AddMicrosoftIdentityMessageHandler(
        configuration.GetSection("DownstreamApi"),
        "DownstreamApi");

Parameterlos für die Konfiguration pro Anforderung:

services.AddHttpClient("FlexibleClient")
    .AddMicrosoftIdentityMessageHandler();

// Later, in a service:
var request = new HttpRequestMessage(HttpMethod.Get, "/api/data")
    .WithAuthenticationOptions(options =>
    {
        options.Scopes.Add("custom.scope");
    });
var response = await httpClient.SendAsync(request);

Hinweise

Diese Erweiterungsmethoden bieten eine bequeme Möglichkeit zum Konfigurieren von HttpClient-Instanzen mit automatischer Microsoft Identitätsauthentifizierung mithilfe von MicrosoftIdentityMessageHandler. Der Handler fügt automatisch Autorisierungsheader zu ausgehenden HTTP-Anforderungen basierend auf den konfigurierten Optionen hinzu.

Es werden vier Überladungen bereitgestellt, um verschiedene Konfigurationsszenarien zu unterstützen:

  • Parameterlos: Für Szenarien, in denen Optionen pro Anforderung festgelegt werden
  • Optionsinstanz: Für die programmgesteuerte Konfiguration mit einem vordefinierten Optionsobjekt
  • Aktionsdelegat: Für die Inlinekonfiguration mithilfe eines Konfigurationsdelegats
  • IConfiguration: Für die Konfiguration aus appsettings.json oder anderen Konfigurationsquellen

Methoden

Name Beschreibung
AddMicrosoftIdentityMessageHandler(IHttpClientBuilder, Action<MicrosoftIdentityMessageHandlerOptions>)

Fügt der HTTP-Clientpipeline eine MicrosoftIdentityMessageHandler Option hinzu, die über Stellvertretung konfiguriert ist.

AddMicrosoftIdentityMessageHandler(IHttpClientBuilder, IConfiguration, String)

Fügt der HTTP-Clientpipeline eine MicrosoftIdentityMessageHandler Verbindung mit optionen hinzu, die von IConfiguration gebunden sind.

AddMicrosoftIdentityMessageHandler(IHttpClientBuilder, MicrosoftIdentityMessageHandlerOptions)

Fügt der MicrosoftIdentityMessageHandler HTTP-Clientpipeline eine mit den angegebenen Optionen hinzu.

AddMicrosoftIdentityMessageHandler(IHttpClientBuilder)

Fügt der MicrosoftIdentityMessageHandler HTTP-Clientpipeline eine Ohne Standardoptionen hinzu. Optionen müssen pro Anforderung mithilfe von WithAuthenticationOptions(HttpRequestMessage, MicrosoftIdentityMessageHandlerOptions).

Gilt für:

Weitere Informationen