Wenn ein Nutzer eine Datei auswählt und auf das Menüelement „Öffnen mit“ der Drive-Benutzeroberfläche klickt, leitet Drive den Nutzer zur Open-URL der App weiter, die in Drive-Benutzeroberflächenintegration konfigurieren definiert ist.
Wenn Sie beim Konfigurieren einer Drive-UI-Integration das Kästchen „Importieren“ angekreuzt haben, kann der Nutzer eine Kombination aus app-spezifischen und Google Workspace-Dateien zum Öffnen auswählen. Wenn Sie eine Drive-UI-Integration konfigurieren, werden app-spezifische Dateien in den Feldern „Standard-MIME-Typen“ und „Standard-Dateierweiterungen“ definiert, während Google Workspace-Dateien in den Feldern „Sekundäre MIME-Typen“ und „Sekundäre Dateierweiterungen“ definiert werden.
Für jede Datei, die der Nutzer öffnen möchte, vergleicht Drive die MIME-Typen mit den von Ihnen definierten Standard- und sekundären MIME-Typen:
Bei MIME-Typen, die im Feld „Standard-MIME-Typen“ definiert sind, wird die Datei-ID an Ihre App übergeben. Informationen zum Umgang mit app-spezifischen Dateien finden Sie unter Open-URL für app-spezifische Dokumente verarbeiten.
Für MIME-Typen, die im Feld „Sekundäre MIME-Typen“ definiert sind, wird in der Drive-Benutzeroberfläche ein Dialogfeld angezeigt, in dem der Nutzer gefragt wird, in welchen Dateityp die Google Workspace-Datei konvertiert werden soll. Wenn Sie beispielsweise in der Drive-Benutzeroberfläche eine Google-Dokumente-Datei auswählen und im Feld „Sekundäre MIME-Typen“ angezeigt wird, dass Ihre App „text/plain“ oder „application/pdf“ unterstützt, werden Nutzer in der Drive-Benutzeroberfläche gefragt, ob sie die Datei in Nur-Text oder PDF konvertieren möchten.
Informationen zum Umgang mit Google Workspace-Dateien finden Sie unter Open-URL für Google Workspace-Dokumente verarbeiten. Eine Liste der Google Workspace-Dokumente und MIME-Typ-Konvertierungsformate finden Sie unter MIME-Typen für den Export von Google Workspace-Dokumenten.
„Open URL“ für app-spezifische Dokumente verarbeiten
Wie unter Drive-Benutzeroberflächenintegration konfigurieren beschrieben, erhält Ihre App Vorlagenvariablen mit Informationen zum Öffnen der Datei. Ihre App erhält einen Standardsatz von Vorlagenvariablen innerhalb eines state
-Parameters. Die Standardinformationen für state
für eine app-spezifische Open-URL sind:
{
"ids": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Diese Ausgabe enthält die folgenden Werte:
- ID: Die ID des übergeordneten Ordners.
- RESOURCE_KEYS: Ein JSON-Wörterbuch mit Datei-IDs, die den jeweiligen Ressourcenschlüsseln zugeordnet sind.
open
: Die Aktion, die ausgeführt wird. Der Wert istopen
, wenn eine Open-URL verwendet wird.- USER_ID: Die Profil-ID, die den Nutzer eindeutig identifiziert.
Ihre App muss auf diese Anfrage reagieren. Gehen Sie dazu so vor:
- Prüfen Sie, ob das Feld
action
den Wertopen
hat und das Feldids
vorhanden ist. - Verwenden Sie den Wert
userId
, um eine neue Sitzung für den Nutzer zu erstellen. Weitere Informationen zu angemeldeten Nutzern finden Sie unter Nutzer und neue Ereignisse. - Mit der Methode
files.get
können Sie Berechtigungen prüfen, Dateimetadaten abrufen und den Dateiinhalt mit denID
-Werten herunterladen. - Wenn
resourceKeys
für die Anfrage festgelegt wurde, legen Sie den Anfrage-HeaderX-Goog-Drive-Resource-Keys
fest. Weitere Informationen zu Ressourcenschlüsseln finden Sie unter Über Links freigegebene Dateien mit Ressourcenschlüsseln aufrufen.
Der Parameter state
ist URL-codiert. Ihre App muss also die Escapezeichen verarbeiten und ihn als JSON parsen.
„URL öffnen“ für Google Workspace-Dokumente verarbeiten
Wie unter Drive-Benutzeroberflächenintegration konfigurieren beschrieben, erhält Ihre App einen Standardsatz von Vorlagenvariablen über den Parameter state
. Die Standardinformationen für state
für eine Google Workspace-URL zum Öffnen sind:
{
"exportIds": ["ID"],
"resourceKeys":{"RESOURCE_KEYS":"RESOURCE_KEYS"},
"action":"open",
"userId":"USER_ID"
}
Diese Ausgabe enthält die folgenden Werte:
- EXPORT_ID: Eine durch Kommas getrennte Liste der zu exportierenden Datei-IDs (wird nur beim Öffnen integrierter Google-Dokumente verwendet).
- RESOURCE_KEYS: Ein JSON-Wörterbuch mit Datei-IDs, die den jeweiligen Ressourcenschlüsseln zugeordnet sind.
open
: Die Aktion, die ausgeführt wird. Der Wert istopen
, wenn eine Open-URL verwendet wird.- USER_ID: Die Profil-ID, die den Nutzer identifiziert.
Ihre App muss auf diese Anfrage reagieren. Gehen Sie dazu so vor:
Prüfen Sie, ob es sich um eine Anfrage zum Öffnen einer Datei handelt, indem Sie sowohl den Wert
open
im Feldstate
als auch das FeldexportIds
erkennen.Mit der Methode
files.get
können Sie Berechtigungen prüfen, Dateimetadaten abrufen und den MIME-Typ anhand derEXPORT_ID
-Werte ermitteln.Konvertieren Sie den Dateiinhalt mit der Methode
files.export
. Das folgende Codebeispiel zeigt, wie Sie ein Google Workspace-Dokument in den angeforderten MIME-Typ exportieren.Wenn
resourceKey
für die Anfrage festgelegt wurde, legen Sie den Anfrage-HeaderX-Goog-Drive-Resource-Keys
fest. Weitere Informationen zu Ressourcenschlüsseln finden Sie unter Über Links freigegebene Dateien mit Ressourcenschlüsseln aufrufen.Java
Python
Node.js
PHP
Konvertierte Dateien schreibgeschützt anzeigen oder ein Dialogfeld präsentieren, in dem der Nutzer die Datei als neuen Dateityp speichern kann.
Der Parameter state
ist URL-codiert. Ihre App muss also die Escapezeichen verarbeiten und ihn als JSON parsen.
Nutzer und neue Ereignisse
Drive-Apps sollten alle „Öffnen mit“-Ereignisse als potenzielle Anmeldungen behandeln. Einige Nutzer haben möglicherweise mehrere Konten. Daher stimmt die Nutzer-ID im Parameter state
möglicherweise nicht mit der aktuellen Sitzung überein. Wenn die Nutzer-ID im Parameter state
nicht mit der aktuellen Sitzung übereinstimmt, beenden Sie die aktuelle Sitzung für Ihre App und melden Sie sich als der angeforderte Nutzer an.
Weitere Informationen
Neben dem Öffnen einer Anwendung über die Google Drive-Benutzeroberfläche können Anwendungen auch eine Dateiauswahl anzeigen, um Inhalte aus einer App heraus auszuwählen. Weitere Informationen finden Sie unter Google Picker.