Gdy użytkownik kliknie przycisk „Nowy” w interfejsie Dysku i wybierz aplikację na interfejsu Dysku, Dysk przekierowuje użytkownika do nowego adresu URL tej aplikacji zdefiniowane w artykule Konfigurowanie interfejsu Dysku .
Aplikacja otrzymuje wtedy domyślny zestaw zmiennych szablonu w kodzie
state
. Domyślna wartość state
Oto informacje o nowym adresie URL:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
Dane wyjściowe zawierają następujące wartości:
create
: wykonywane działanie. Wartość wynosicreate
, jeśli użytkownik klika 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.
W odpowiedzi na to żądanie Twoja aplikacja musi wykonać te czynności:
- Sprawdź, czy pole
action
zawiera wartośćcreate
. - Użyj wartości
userId
, aby utworzyć nową sesję dla użytkownika. Więcej informacji o zalogowanych użytkownikach, zapoznaj się z sekcją Użytkownicy i nowych wydarzeń. - Użyj metody
files.create
, aby utworzyć zasób pliku. Jeśli w żądaniu ustawiono atrybutfolderId
, ustaw parametrparents
na wartośćfolderId
. - Jeśli w żądaniu ustawiono atrybut
folderResourceKey
, ustaw parametr Nagłówek żądaniaX-Goog-Drive-Resource-Keys
. Więcej informacji na temat: klucze zasobów, zobacz Uzyskiwanie dostępu do plików udostępnionych za pomocą linków za pomocą zasobu .
Parametr state
jest zakodowany na potrzeby adresu URL, więc aplikacja musi obsługiwać zmianę znaczenia
i przeanalizuj go jako JSON.
Użytkownicy i nowe wydarzenia
Aplikacje Dysku powinny traktować wszystkie uprawnienia do tworzenia zdarzeń jako potencjalnych
dane logowania. Niektórzy użytkownicy mogą mieć wiele kont, więc identyfikator użytkownika w state
może nie pasować do bieżącej sesji. Jeśli identyfikator użytkownika w state
nie pasuje do bieżącej sesji, zakończ bieżącą sesję
i zaloguj się jako żądany użytkownik.