Mit der Google Picker API können Nutzer Google Drive-Dateien auswählen oder hochladen. Nutzer können Ihren Desktop-Apps die Berechtigung erteilen, auf ihre Drive-Daten zuzugreifen. So können Sie auf sichere und autorisierte Weise mit ihren Dateien interagieren.
Die Google-Auswahl fungiert als „Datei öffnen“-Dialogfeld für in Drive gespeicherte Dateien und bietet mehrere Funktionen:
- Die Benutzeroberfläche ähnelt der Google Drive-Benutzeroberfläche.
- Mehrere Ansichten mit Vorschauen und Miniaturansichten von Drive-Dateien.
- Eine Weiterleitung zur Google-Auswahl in einem neuen Tab im Standardbrowser des Nutzers.
Hinweis: Mit der Google-Auswahl können Nutzer Dateien nicht von einem Ordner in einen anderen verschieben oder kopieren. Zum Verwalten von Dateien müssen Sie entweder die Google Drive API oder die Drive-Benutzeroberfläche verwenden.
Vorbereitung
Für Apps, die Google Picker verwenden, gelten alle bestehenden Nutzungsbedingungen. Am wichtigsten ist, dass Sie sich in Ihren Anfragen korrekt identifizieren.
Außerdem benötigen Sie ein Google Cloud-Projekt.
Umgebung einrichten
Bevor Sie die Google Picker API verwenden können, müssen Sie Ihre Umgebung einrichten.
API aktivieren
Bevor Sie Google APIs verwenden können, müssen Sie sie in einem Google Cloud-Projekt aktivieren. Sie können eine oder mehrere APIs in einem einzelnen Google Cloud-Projekt aktivieren.Aktivieren Sie in der Google Cloud Console die Google Picker API.
API-Schlüssel erstellen
Ein API-Schlüssel ist ein langer String, der Groß- und Kleinbuchstaben, Zahlen, Unterstriche und Bindestriche enthält. Beispiel: AIzaSyDaGmWKa4JsXZ-HjGw7ISLn_3namBGewQe
.
Diese Authentifizierungsmethode wird verwendet, um anonym auf öffentlich verfügbare Daten zuzugreifen, z. B. auf Google Workspace-Dateien, die mit der Freigabeeinstellung „Jeder im Internet mit diesem Link“ freigegeben wurden. Weitere Informationen finden Sie unter API-Schlüssel verwalten.
So erstellen Sie einen API-Schlüssel:
- Rufen Sie in der Google Cloud Console das Menü > APIs und Dienste > Anmeldedaten auf.
- Klicken Sie auf Anmeldedaten erstellen > API-Schlüssel.
- Der neue API-Schlüssel wird angezeigt.
- Klicken Sie auf „Kopieren“ , um den API-Schlüssel zu kopieren und im Code Ihrer App zu verwenden. Der API-Schlüssel ist auch im Bereich „API-Schlüssel“ der Anmeldedaten Ihres Projekts zu finden.
- Damit eine nicht autorisierte Verwendung verhindert wird, sollten Sie einschränken, wo und für welche APIs der API-Schlüssel verwendet werden kann. Weitere Informationen finden Sie unter API-Einschränkungen hinzufügen.
Anmeldedaten für eine Desktopanwendung autorisieren
Für die Authentifizierung von Endnutzern und für den Zugriff auf Nutzerdaten in Ihrer Anwendung müssen Sie mindestens eine OAuth 2.0-Client-ID erstellen. Eine Client-ID wird zur Identifizierung einer einzelnen Anwendung bei Googles OAuth-Servern verwendet. Wenn Ihre App auf mehreren Plattformen ausgeführt wird, müssen Sie für jede Plattform eine separate Client-ID erstellen.- Rufen Sie in der Google Cloud Console das Menü > Google Auth platform > Clients auf.
- Klicken Sie auf Create Client.
- Klicken Sie auf Anwendungstyp > Desktop-App.
- Geben Sie im Feld Name einen Namen für die Anmeldedaten ein. Dieser Name wird nur in der Google Cloud Console angezeigt.
- Klicken Sie auf Erstellen.
Die neu erstellten Anmeldedaten werden unter „OAuth 2.0-Client-IDs“ angezeigt.
Damit Apps die Autorisierung für Dateien erhalten, für die sie zuvor autorisiert wurden, müssen Sie die folgenden Schritte ausführen:
Sie müssen ein OAuth 2.0-Token mit dem Bereich
drive.file
,drive
oderdrive.readonly
gemäß dieser Anleitung abrufen: Mit OAuth 2.0 auf Google APIs zugreifen. Weitere Informationen zu Bereichen finden Sie unter Google Drive API-Bereiche auswählen.Übergeben Sie das OAuth 2.0-Token an die Drive API, um Dateien zu lesen und zu ändern, für die der Nutzer zuvor Zugriff gewährt hat.
Google Picker anzeigen
Die Google Picker API für Desktop-Apps leitet zu Google Picker in einem neuen Tab im Standardbrowser des Nutzers weiter. Sobald der Nutzer Zugriff gewährt und die entsprechenden Dateien ausgewählt hat, kehrt die Google-Auswahl über die Callback-URL zur aufrufenden App zurück. Wenn die Google Picker API auf einer Clientseite geöffnet werden soll, verwenden Sie stattdessen die Google Picker API für Web-Apps. Weitere Informationen finden Sie unter Web-Apps – Übersicht.
So ermöglichen Sie Nutzern, Zugriff auf zusätzliche Dateien zu gewähren oder Dateien für die Verwendung in Ihrem Desktop-App-Ablauf auszuwählen:
Fordern Sie Zugriff auf den Bereich
drive.file
an, um die OAuth 2.0-Zugriffsseite in einem neuen Browser-Tab zu öffnen. Folgen Sie dazu dieser Anleitung: Mit OAuth 2.0 auf Google APIs zugreifen. Weitere Informationen zu Bereichen finden Sie unter Google Drive API-Bereiche auswählen.Beachten Sie, dass für Desktop-Apps nur der Bereich
drive.file
zulässig ist und er nicht mit anderen Bereichen kombiniert werden kann.Die URL für den neuen Browser-Tab akzeptiert alle Standard-OAuth-Abfragestringparameter.
Sie müssen die URL-Parameter
prompt
undtrigger_onepick
an Ihre OAuth 2.0-Autorisierungs-URL-Anfrage anhängen. Sie können den Google Picker auch mit mehreren optionalen Parametern anpassen:Parameter Beschreibung Status prompt=consent
Aufforderung zum Dateizugriff Erforderlich trigger_onepick=true
Aktivieren Sie die Google-Auswahl. Erforderlich allow_multiple=true
Ist dieser Wert „true“, kann der Nutzer mehrere Dateien auswählen. Optional mimetypes=MIMETYPES
Eine durch Kommas getrennte Liste von MIME-Typen, mit denen die Suchergebnisse gefiltert werden sollen. Wenn nicht festgelegt, werden Dateien für alle MIME-Typen in der Ansicht angezeigt. Optional file_ids=FILE_IDS
Eine durch Kommas getrennte Liste von Datei-IDs, mit denen die Suchergebnisse gefiltert werden sollen. Wenn nichts angegeben ist, werden alle Dateien in der Ansicht angezeigt. Optional Das folgende Beispiel zeigt eine Anfrage für eine OAuth 2.0-Autorisierungs-URL:
https://accounts.google.com/o/oauth2/v2/auth? \ client_id=CLIENT_ID \ &scope=https://www.googleapis.com/auth/drive.file \ &redirect_uri=REDIRECT_URI \ &response_type=code \ &access_type=offline \ &prompt=consent \ &trigger_onepick=true
Ersetzen Sie Folgendes:
CLIENT_ID
: Die Client-ID Ihrer Desktop-App.REDIRECT_URI
: Hier leitet der Autorisierungsserver den Browser des Nutzers nach erfolgreicher Authentifizierung weiter. Beispiel:https://www.cymbalgroup.com/oauth2callback
Die angegebene
redirect_uri
muss eine öffentliche HTTPS-URL sein. Wenn Sie ein benutzerdefiniertes Protokoll oder eine Localhost-URL für Ihreredirect_uri
verwenden möchten, müssen Sie eine öffentliche HTTPS-URL verwenden, die dann an das benutzerdefinierte Protokoll oder die Localhost-URL weiterleitet.
Sobald der Nutzer den Zugriff gewährt und die entsprechenden Dateien ausgewählt hat, wird OAuth mit den folgenden angehängten URL-Parametern zu der im Antrag angegebenen
redirect_uri
weitergeleitet:picked_file_ids
: Wenn der Nutzer Zugriff gewährt und Dateien ausgewählt hat, eine durch Kommas getrennte Liste der ausgewählten Datei-IDs.code
: Das Zugriffstoken oder der Zugriffscode basierend auf dem im Antrag festgelegten Parameterresponse_type
. Dieser Parameter enthält einen neuen Autorisierungscode.scope
: Die in der Anfrage enthaltenen Bereiche.error
: Wenn der Nutzer die Anfrage im Einwilligungsablauf abgebrochen hat, wird ein Fehler angezeigt.
Das folgende Beispiel zeigt eine Antwort auf eine OAuth 2.0-Autorisierungs-URL:
https://REDIRECT_URI?picked_file_ids=PICKED_FILE_IDS&code=CODE&scope=SCOPES
Apps müssen den Autorisierungscode aus Schritt 3 gegen ein neues OAuth 2.0-Token eintauschen. Weitere Informationen finden Sie unter Autorisierungscode für Aktualisierungs- und Zugriffstokens austauschen.
Apps können dann die Datei-IDs aus dem URL-Parameter in Schritt 3 und das in Schritt 4 abgerufene OAuth 2.0-Token verwenden, um die Drive API aufzurufen. Weitere Informationen finden Sie unter Google Drive API – Übersicht.