Gdy użytkownik kliknie przycisk „Nowy” w interfejsie Dysku i wybierze aplikację w interfejsie Dysku, Dysk przekieruje go na adres URL Nowy tej aplikacji zdefiniowany w konfiguracji integracji z interfejsem Dysku.
Aplikacja otrzymuje domyślny zestaw zmiennych szablonu w parametrze state. Domyślne stateinformacje o nowym adresie URL to:
{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}
Dane wyjściowe zawierają te wartości:
- create: wykonywana czynność. Wartość to- create, gdy użytkownik kliknie przycisk „Nowy” w interfejsie Dysku.
- FOLDER_ID: identyfikator folderu nadrzędnego.
- FOLDER_RESOURCE_KEY: Klucz zasobu folderu nadrzędnego.
- USER_ID: identyfikator profilu, który jednoznacznie identyfikuje użytkownika.
Aplikacja musi zareagować na tę prośbę, wykonując te czynności:
- Sprawdź, czy pole actionma wartośćcreate.
- Użyj wartości userId, aby utworzyć nową sesję użytkownika. Więcej informacji o zalogowanych użytkownikach znajdziesz w artykule Użytkownicy i nowe zdarzenia.
- Użyj metody files.create, aby utworzyć zasób pliku. Jeśli w żądaniu ustawiono wartośćfolderId, ustaw poleparentsna wartośćfolderId.
- Jeśli w żądaniu ustawiono wartość folderResourceKey, ustaw nagłówek żądaniaX-Goog-Drive-Resource-Keys. Więcej informacji o kluczach zasobów znajdziesz w artykule Uzyskiwanie dostępu do plików udostępnionych za pomocą linku przy użyciu kluczy zasobów.
Parametr state jest zakodowany w formacie adresu URL, więc aplikacja musi obsługiwać znaki ucieczki i parsować go jako JSON.
Użytkownicy i nowe zdarzenia
Aplikacje na Dysku powinny traktować wszystkie zdarzenia „create” jako potencjalne logowania. Niektórzy użytkownicy mogą mieć wiele kont, więc identyfikator użytkownika w parametrze state może nie pasować do bieżącej sesji. Jeśli identyfikator użytkownika w parametrze state nie pasuje do bieżącej sesji, zakończ bieżącą sesję w aplikacji i zaloguj się jako użytkownik, który wysłał prośbę.