Verwenden von MSGraphClient zum Herstellen einer Verbindung mit Microsoft GraphUse the MSGraphClient to connect to Microsoft Graph

Beim Erstellen von SharePoint-Framework-Lösungen können Sie mithilfe von MSGraphClient ganz einfach eine Verbindung mit Microsoft Graph herstellen.When building SharePoint Framework solutions, you can easily connect to the Microsoft Graph by using the MSGraphClient.

MSGraphClient-ÜbersichtMSGraphClient overview

MSGraphClient ist ein neuer HTTP-Client, der in SharePoint-Framework v1.6.0 eingeführt wurde und das Verbinden mit Microsoft Graph in SharePoint-Framework-Lösungen vereinfacht.MSGraphClient is a new HTTP client introduced in SharePoint Framework v1.6.0 that simplifies connecting to the Microsoft Graph inside SharePoint Framework solutions. MSGraphClient umschließt die vorhandene Microsoft Graph-JavaScript-Clientbibliothek und bietet Entwicklern die gleichen Funktionen wie bei Verwendung der Clientbibliothek in anderen clientseitigen Lösungen.MSGraphClient wraps the existing Microsoft Graph JavaScript Client Library, offering developers the same capabilities as when using the client library in other client-side solutions.

Während Sie die JavaScript-Clientbibliothek von Microsoft Graph auch direkt in Ihrer Lösung verwenden könnten, wird bei Verwendung von MSGraphClient die Authentifizierung bei Microsoft Graph für Sie erledigt, sodass Sie sich auf das Erstellen Ihrer Lösung konzentrieren können.While you could use the Microsoft Graph JavaScript Client Library in your solution directly, MSGraphClient handles authenticating against the Microsoft Graph for you, which allows you to focus on building your solution.

Verwenden von MSGraphClient in einer LösungUse the MSGraphClient in your solution

Hinweis

Der MSGraphClient ist nur in Projekten verfügbar, die mit SharePoint-Framework v1.6.0 und höher erstellt wurden.The MSGraphClient is available only in projects built using SharePoint Framework v1.6.0 and later. Auch wenn die Verwendung von MSGraphClient in diesem Artikel mit einem clientseitigen Webpart erläutert wird, können Sie es ebenso in SharePoint-Framework-Erweiterungen verwenden.While the MSGraphClient is explained in this article by using a client-side web part, you can also use it in SharePoint Framework Extensions.

Hinweis

Das einmaliges Anmelden für den MSGraphClient ist heute nur noch in SharePoint Online verfügbar.The single sign-on for the MSGraphClient is only available in SharePoint Online today. Sie können den Client für Entwicklungen vor Ort nutzen, aber Ihre Benutzer werden aufgefordert, sich innerhalb des Webparts erneut anzumelden.You can leverage the client for on premises developments but your users will be requested to sign in again within the webpart.

  1. Um MSGraphClient in Ihrer SharePoint-Framework-Lösung zu verwenden, fügen Sie die folgende import-Klausel in der Hauptdatei des Webparts hinzu:To use the MSGraphClient in your SharePoint Framework solution, add the following import clause in your main web part file:

    import { MSGraphClient } from '@microsoft/sp-http';
    
  2. MSGraphClient wird über die im Webpartkontext verfügbare MSGraphClientFactory verfügbar gemacht.MSGraphClient is exposed through the MSGraphClientFactory available on the web part context. Fügen Sie in Ihrem Code Folgendes hinzu, um auf einen Verweis auf MSGraphClient abzurufen:To get a reference to MSGraphClient, in your code add:

    export default class HelloWorldWebPart extends BaseClientSideWebPart<IHelloWorldWebPartProps> {
      public render(): void {
        // ...
    
        this.context.msGraphClientFactory
          .getClient()
          .then((client: MSGraphClient): void => {
            // use MSGraphClient here
          });
      }
    
      // ...
    }
    
  3. Nachdem Sie den Verweis auf die MSGraphClient-Instanz haben, beginnen Sie mit der Kommunikation mit Microsoft Graph, indem Sie die Syntax der JavaScript-Clientbibliothek verwenden:After you have the reference to the MSGraphClient instance, start communicating with the Microsoft Graph by using its JavaScript Client Library syntax:

    export default class HelloWorldWebPart extends BaseClientSideWebPart<IHelloWorldWebPartProps> {
      public render(): void {
        // ...
    
        this.context.msGraphClientFactory
          .getClient()
          .then((client: MSGraphClient): void => {
            // get information about the current user from the Microsoft Graph
            client
              .api('/me')
              .get((error, response: any, rawResponse?: any) => {
                // handle the response
            });
          });
      }
    
      // ...
    }
    

Verwenden der Microsoft Graph-TypeScript-TypenUse the Microsoft Graph TypeScript types

Bei der Arbeit mit Microsoft Graph und TypeScript können Sie die Microsoft Graph-TypeScript-Typen verwenden, um Fehler in Ihrem Code schneller zu erkennen.When working with the Microsoft Graph and TypeScript, you can use the Microsoft Graph TypeScript types to help you catch errors in your code faster. Die Microsoft Graph-TypeScript-Typen werden als separates Paket bereitgestellt.The Microsoft Graph TypeScript types are provided as a separate package.

  1. Installieren der Microsoft Graph-TypeScript-Typen:Install the Microsoft Graph TypeScript types:

    npm install @microsoft/microsoft-graph-types --save-dev
    
  2. Nach der Installation des Pakets in Ihrem Projekt importieren Sie es in der Webpartdatei:After installing the package in your project, import it to your web part file:

    import * as MicrosoftGraph from '@microsoft/microsoft-graph-types';
    
  3. Geben Sie die von Microsoft Graph abgerufenen Objekte ein. Beispiel:Enter the objects retrieved from the Microsoft Graph, for example:

    export default class HelloWorldWebPart extends BaseClientSideWebPart<IHelloWorldWebPartProps> {
      public render(): void {
        // ...
    
        this.context.msGraphClientFactory
          .getClient()
          .then((client: MSGraphClient): void => {
            // get information about the current user from the Microsoft Graph
            client
              .api('/me')
              .get((error, user: MicrosoftGraph.User, rawResponse?: any) => {
                // handle the response
            });
          });
      }
    
      // ...
    }
    

Verfügbare BerechtigungsbereicheAvailable permission scopes

Standardmäßig werden dem Dienstprinzipal keine expliziten Berechtigungen zum Zugriff auf Microsoft Graph erteilt.By default, the service principal has no explicit permissions granted to access the Microsoft Graph. Wenn Sie jedoch ein Zugriffstoken für Microsoft Graph anfordern möchten, dann erhalten Sie ein Token mit dem Berechtigungsbereich user_impersonation, das zum Lesen von Informationen über die Benutzer verwendet werden kann (d. h. User.Read.All).However, if you request an access token for the Microsoft Graph, you get a token with the user_impersonation permission scope that can be used for reading information about the users (that is, User.Read.All).

Zusätzliche Berechtigungsbereiche können von Entwicklern angefordert und von Mandantenadministratoren gewährt werden.Additional permission scopes can be requested by developers and granted by tenant administrators. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit durch Azure AD gesicherten APIs in SharePoint-Framework-Lösungen.For more information, see Connect to Azure AD-secured APIs in SharePoint Framework solutions.

Siehe auchSee also