Różnice między interfejsem My Drive API a dyskami współdzielonymi

Dyski współdzielone korzystają z różnych modeli organizacji, udostępniania i własności, które znajdują się na Moim dysku. Z tego powodu niektóre operacje na Moim dysku nie są dozwolone w przypadku treści przechowywanych na dysku współdzielonym. Ten dokument przedstawia różnice między interfejsami API dysków współdzielonych.

Files zasób

Te pola są wypełniane tylko w przypadku plików na dysku współdzielonym:

  • hasAugmentedPermissions – określa, czy dowolny użytkownik otrzymał dostęp bezpośrednio do tego pliku.
  • capabilities/canAddFolderFromAnotherDrive – określa, czy bieżący użytkownik może dodać do tego folderu folder z innego dysku (innego dysku współdzielonego lub Mojego dysku).
  • capabilities/canDeleteChildren – określa, czy bieżący użytkownik może usuwać elementy podrzędne tego folderu.
  • capabilities/canMoveChildrenOutOfDrive – określa, czy bieżący użytkownik może przenieść elementy podrzędne tego folderu poza dysk współdzielony.
  • capabilities/canMoveChildrenWithinDrive – określa, czy bieżący użytkownik może przenieść elementy podrzędne tego folderu w obrębie dysku współdzielonego.
  • capabilities/canMoveItemWithinDrive – określa, czy bieżący użytkownik może przenieść ten element na dysku współdzielonym w obrębie dysku współdzielonego.
  • capabilities/canReadDrive – określa, czy bieżący użytkownik ma uprawnienia do odczytu dysku współdzielonego, do którego należy ten plik.
  • capabilities/canTrashChildren – określa, czy bieżący użytkownik może przenieść do kosza elementy podrzędne z tego folderu.
  • driveId – identyfikator dysku współdzielonego, na którym znajduje się plik.
  • trashingUser – jeśli plik został przeniesiony do kosza, użytkownik, który go umieszczał w koszu.
  • trashedTime – czas usunięcia elementu do kosza.

Te pola nie są wypełniane w przypadku plików na dysku współdzielonym:

  • permissions – ze względu na potencjalny rozmiar list kontroli dostępu dysków współdzielonych, uprawnienia nie są zwracane jako część plików. Użyj metody permissions.list, która obsługuje podział na strony, aby wyświetlić listę uprawnień pliku na dysku współdzielonym lub samego dysku współdzielonego.
  • owners, ownerNames, ownedByMe – pliki na dysku współdzielonym należą do dysku współdzielonego, a nie do poszczególnych użytkowników.
  • folderColorRgb – foldery nie mogą mieć różnych kolorów
  • shared – wszystkie elementy na dysku współdzielonym są udostępnione.
  • writersCanShare – obecnie nie można ograniczać udostępniania według roli na dyskach współdzielonych.

Te pola są ustawiane tylko wtedy, gdy użytkownikowi przyznano uprawnienia dostępu do plików w elemencie:

  • sharedWithMeDate
  • sharingUser

Szczególną uwagę należy zwrócić na poniższe pola, gdy używasz ich na dyskach współdzielonych:

  • parents.isRoot – to pole ma wartość true (prawda) tylko w przypadku folderu głównego Mojego dysku. Ma wartość false (fałsz) w przypadku folderu najwyższego poziomu na dysku współdzielonym.
  • parents – element nadrzędny nie pojawi się na liście elementów nadrzędnych, jeśli użytkownik wysyłający prośbę nie jest użytkownikiem dysku współdzielonego i nie ma dostępu do konta nadrzędnego. Poza tym, jeśli plik znajduje się na dysku współdzielonym, lista elementów nadrzędnych musi zawierać dokładnie 1 element (z wyjątkiem folderu najwyższego poziomu).

  • capabilities/canRemoveChildren – użyj capabilities/canDeleteChildren lub capabilities/canTrashChildren.

Permissions zasób

Pole permissionDetails jest wypełniane tylko w przypadku plików znajdujących się na dysku współdzielonym. To pole zawiera listę połączonych uprawnień, które są w tym pliku na dysku współdzielonym lub przez niego odziedziczone. To pole służy tylko do wyświetlania elementów na dysku współdzielonym. Reklamy

  • zdefiniowano 2 nowe role: organizer i fileOrganizer.
  • Funkcja permissions.list obsługuje teraz podział na strony.

Changes zasób

W zasobie Changes dysku współdzielonego dostępne są te nowe pola:

  • changeType – typ zmiany. Możliwe wartości to file i drive.
  • driveId – identyfikator dysku współdzielonego powiązanego z tą zmianą.
  • drive – zaktualizowany stan dysku współdzielonego. Widoczny, jeśli changeType ma wartość drive, a użytkownik nadal jest użytkownikiem dysku współdzielonego.

W przypadku aplikacji, które muszą synchronizować treści z dyskami współdzielonymi lub śledzić aktywność, mogą być wymagane dodatkowe zmiany. Szczegółowe informacje znajdziesz w artykule na temat śledzenia zmian w przypadku użytkowników i dysków współdzielonych.