Wenn ein Nutzer eine Datei auswählt und in der Drive-UI auf den Menüpunkt „Öffnen mit“ klickt, wird er an die Open-URL dieser App weitergeleitet, die unter Drive-UI-Integration konfigurieren definiert wurde.
Wenn Sie beim Konfigurieren einer Integration in die Drive-UI das Kästchen „Importieren“ angeklickt 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. Google Workspace-Dateien hingegen werden in den Feldern „Sekundäre MIME-Typen“ und „Sekundäre Dateierweiterungen“ definiert.
Für jede Datei, die der Nutzer öffnen möchte, gleicht Drive die MIME-Typen mit den von Ihnen definierten standardmäßigen und sekundären MIME-Typen ab:
Für MIME-Typen, die im Feld "Standard-MIME-Typen" definiert sind, wird die Datei-ID an Ihre Anwendung übergeben. Informationen zum Umgang mit anwendungsspezifischen Dateien finden Sie unter Eine offene URL für anwendungsspezifische Dokumente verarbeiten.
Für MIME-Typen, die im Feld "Sekundäre MIME-Typen" definiert sind, wird in der Drive-UI ein Dialogfeld angezeigt, in dem der Nutzer gefragt wird, in welchen Dateityp die Google Workspace-Datei konvertiert werden soll. Wenn Sie beispielsweise eine Google Docs-Datei in der Drive-Benutzeroberfläche auswählen und das Feld „Sekundäre MIME-Typen“ darauf hindeutet, dass Ihre App „Nur Text“ oder „Anwendung/PDF“ unterstützt, wird der Nutzer in der Drive-Benutzeroberfläche gefragt, ob er in Nur-Text- oder PDF-Dateien konvertieren möchte.
Informationen zum Umgang mit Google Workspace-Dateien finden Sie unter Mit einer offenen URL für Google Workspace-Dokumente umgehen. Eine Liste der Google Workspace-Dokumente und der Konvertierungsformate für MIME-Typen finden Sie unter MIME-Typen für Google Workspace-Dokumente exportieren.
Eine offene URL für app-spezifische Dokumente verarbeiten
Wie unter Integration der Drive-UI konfigurieren beschrieben, erhält Ihre App Vorlagenvariablen mit Informationen, die sie zum Öffnen der Datei benötigt. Ihre Anwendung erhält einen Standardsatz von Vorlagenvariablen innerhalb eines state
-Parameters. Die standardmäßigen state
-Informationen für eine app-spezifische Open-URL sehen so aus:
{
"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 ausgeführte Aktion. Bei Verwendung einer Open-URL ist der Wertopen
.- 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. - Erstellen Sie mit dem Wert
userId
eine neue Sitzung für den Nutzer. Weitere Informationen zu angemeldeten Nutzern finden Sie unter Nutzer und neue Ereignisse. - Verwenden Sie die Methode
files.get
, um Berechtigungen zu prüfen, Dateimetadaten abzurufen und den Dateiinhalt mithilfe derID
-Werte herunterzuladen. - Wenn
resourceKeys
für die Anfrage festgelegt wurde, legen Sie den AnfrageheaderX-Goog-Drive-Resource-Keys
fest. Weitere Informationen zu Ressourcenschlüsseln finden Sie unter Mit Ressourcenschlüsseln auf per Link freigegebene Dateien zugreifen.
Der Parameter state
ist URL-codiert. Daher muss Ihre Anwendung die Escape-Zeichen verarbeiten und als JSON parsen.
Offene URL für Google Workspace-Dokumente verarbeiten
Wie unter Integration der Drive-UI konfigurieren beschrieben, erhält Ihre Anwendung einen Standardsatz von Vorlagenvariablen innerhalb eines state
-Parameters. Die Standard-state
-Informationen für eine in Google Workspace geöffnete Open-URL 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 zum Öffnen integrierter Google-Dokumente verwendet).
- RESOURCE_KEYS: Ein JSON-Wörterbuch mit Datei-IDs, die den jeweiligen Ressourcenschlüsseln zugeordnet sind.
open
: Die ausgeführte Aktion. Bei Verwendung einer Open-URL ist der Wertopen
.- 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. Dazu erkennen Sie sowohl den Wert
open
im Feldstate
als auch das Vorhandensein des FeldsexportIds
.Verwenden Sie die Methode
files.get
, um Berechtigungen zu prüfen, Dateimetadaten abzurufen und den MIME-Typ mithilfe derEXPORT_ID
-Werte zu 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 AnfrageheaderX-Goog-Drive-Resource-Keys
fest. Weitere Informationen zu Ressourcenschlüsseln finden Sie unter Mit Ressourcenschlüsseln auf per Link freigegebene Dateien zugreifen.Java
Python
Node.js
PHP
Konvertierte Dateien schreibgeschützt anzeigen oder ein Dialogfeld einblenden, in dem der Nutzer die Datei als neuen Dateityp speichern kann.
Der Parameter state
ist URL-codiert. Daher muss Ihre Anwendung die Escape-Zeichen verarbeiten und als JSON parsen.
Nutzer und neue Ereignisse
Drive-Anwendungen 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 Anwendung und melden Sie sich als der angeforderte Nutzer an.
Weitere Informationen
Neben dem Öffnen einer Anwendung über die Google Drive-UI können Anwendungen eine Dateiauswahl anzeigen lassen, um Inhalte aus einer Anwendung auszuwählen. Weitere Informationen finden Sie in der Google-Auswahl.