Z tego przewodnika dowiesz się, jak tworzyć pliki na Dysku Google i nimi zarządzać za pomocą interfejsu Google Drive API.
Utwórz plik
Aby utworzyć na Dysku plik, który nie zawiera metadanych ani treści, użyj metody create w zasobie files bez parametrów.
Gdy utworzysz plik, metoda zwróci zasób files. Plik ma kind drive.file, id, name „Bez tytułu” i mimeType application/octet-stream. Parametr uploadType jest oznaczony jako wymagany, ale domyślnie ma wartość media, więc nie musisz go podawać.
Więcej informacji o ograniczeniach dotyczących plików na Dysku znajdziesz w artykule Limity dotyczące plików i folderów.
Używanie parametru fields
Jeśli chcesz określić pola, które mają być zwracane w odpowiedzi, możesz ustawić fields parametr systemfields w dowolnej metodzie zasobu files. Jeśli pominiesz parametr fields, serwer zwróci domyślny zestaw pól specyficznych dla danej metody. Na przykład metoda list zwraca tylko pola kind, id, name, mimeType i resourceKey dla każdego pliku. Aby zwrócić inne pola, zobacz Zwracanie określonych pól.
Własność pliku
Gdy plik jest tworzony przy użyciu interfejsu Drive API, własność zależy od danych logowania używanych przez aplikację w następujący sposób:
Konto użytkownika (OAuth 2.0): jeśli aplikacja uwierzytelnia się w imieniu użytkownika, staje się on właścicielem pliku. Plik będzie się znajdować w folderze Mój dysk lub w określonym folderze. Wykorzystuje ona limit miejsca na dane.
Konto usługi: jeśli aplikacja uwierzytelnia się za pomocą konta usługi, właścicielem pliku jest konto usługi. Plik jest następnie przechowywany na Dysku konta usługi. Pliki nie pojawiają się na innych kontach pamięci na Dysku, chyba że zostały jawnie udostępnione. Jeśli konto usługi zostanie usunięte, wszystkie należące do niego pliki zostaną natychmiast usunięte.
Jeśli używasz konta usługi, ale chcesz, aby plik należał do konkretnego konta użytkownika, użyj przekazywania dostępu w obrębie całej domeny. Umożliwia to kontu usługi podszywanie się pod użytkownika i tworzenie plików w jego imieniu. Więcej informacji znajdziesz w artykule Przekazywanie kontu usługi uprawnień do całej domeny.
Więcej informacji o uprawnieniach do plików znajdziesz w artykule Udostępnianie plików, folderów i dysków.
Generowanie identyfikatorów do użycia w plikach
Metoda generateIds w zasobie files umożliwia wstępne generowanie unikalnych identyfikatorów plików, których można używać podczas tworzenia lub kopiowania plików i folderów na Dysku. Może to być przydatne, gdy chcesz kontrolować identyfikatory plików w aplikacji, zamiast zezwalać na ich automatyczne przypisywanie przez Dysk.
Liczbę wygenerowanych identyfikatorów możesz ustawić za pomocą parametru zapytania
count.
Jeśli parametr count nie jest ustawiony, domyślnie zwracanych jest 10 wyników. Maksymalna liczba identyfikatorów, o które możesz poprosić, to 1000.
Możesz też określić space, w których można używać identyfikatorów, oraz type produktów, w przypadku których można używać identyfikatorów.
Po wygenerowaniu identyfikatora można go przekazać do metody create lub copy za pomocą pola id. Dzięki temu utworzony lub skopiowany plik będzie używać z góry określonego identyfikatora.
Jeśli plik zostanie utworzony lub skopiowany, kolejne próby zwrócą kod stanu HTTP 409
Conflict i nie zostaną utworzone zduplikowane pliki.
Pamiętaj, że wstępnie wygenerowane identyfikatory nie są obsługiwane w przypadku tworzenia plików Google Workspace, z wyjątkiem application/vnd.google-apps.drive-sdki application/vnd.google-apps.folder typów MIME. Podobnie nie są obsługiwane przesyłane pliki, które odwołują się do konwersji na format pliku Google Workspace.
Tworzenie plików zawierających tylko metadane
Pliki zawierające tylko metadane nie zawierają treści. Metadane to dane (takie jak name, mimeType i createdTime), które opisują plik. Pola takie jak name są niezależne od użytkownika i wyświetlają się tak samo w przypadku każdego użytkownika, natomiast pola takie jak viewedByMeTime zawierają wartości specyficzne dla użytkownika.
Przykładem pliku zawierającego tylko metadane jest folder o typie MIMEapplication/vnd.google-apps.folder. Więcej informacji znajdziesz w artykule Tworzenie folderów i wypełnianie ich zawartością. Innym przykładem jest skrót, który wskazuje inny plik na Dysku o typie MIME application/vnd.google-apps.shortcut. Więcej informacji znajdziesz w artykule Tworzenie skrótu do pliku na Dysku.
Zarządzanie miniaturami
Miniatury pomagają użytkownikom identyfikować pliki na Dysku. Dysk może automatycznie generować miniatury popularnych typów plików. Możesz też przesłać obraz miniatury wygenerowany przez aplikację. Więcej informacji znajdziesz w artykule Przesyłanie miniatur.
Kopiowanie istniejącego pliku
Aby skopiować plik i zastosować wszelkie wymagane aktualizacje, użyj metody copy w zasobie files. Aby znaleźć
fileId do skopiowania, użyj metody list.
Aktualizacje możesz stosować za pomocą semantyki poprawek, co oznacza, że możesz wprowadzać częściowe modyfikacje zasobu. W żądaniu musisz wyraźnie określić pola, które chcesz zmodyfikować. Pola, które nie są uwzględnione w żądaniu, zachowują swoje dotychczasowe wartości. Więcej informacji znajdziesz w artykule Praca z częściowymi zasobami.
Identyfikator skopiowanego pliku możesz ustawić wstępnie za pomocą metody generateIds. Więcej informacji znajdziesz w artykule Generowanie identyfikatorów do użycia w plikach.
Pamiętaj, że do autoryzacji wywołania musisz użyć odpowiedniego zakresu interfejsu Drive API. Więcej informacji o zakresach Dysku znajdziesz w artykule Wybieranie zakresów interfejsu Google Drive API.
Ograniczenia i kwestie do rozważenia
Podczas przygotowywania się do kopiowania plików pamiętaj o tych limitach i kwestiach:
Uprawnienia:
- Obiekt
DownloadRestrictionsMetadatazasobufilesokreśla, kto może skopiować plik. Więcej informacji znajdziesz w artykule Uniemożliwianie użytkownikom pobierania, drukowania i kopiowania Twojego pliku. - Pole
capabilities.canCopyokreśla, czy użytkownik może kopiować plik. Więcej informacji znajdziesz w artykule Omówienie funkcji plików. - Użytkownik, który utworzył kopię, jest właścicielem skopiowanego pliku. Żadne inne ustawienia udostępniania z pliku źródłowego nie są replikowane. Jeśli kopia zostanie utworzona w folderze udostępnionym, odziedziczy uprawnienia tego folderu.
- Własność skopiowanego pliku może się zmienić, a kopia może nie odziedziczyć ustawień udostępniania oryginalnego pliku. Te ustawienia mogą wymagać zresetowania.
- Obiekt
Zarządzanie plikami:
- Niektórych plików, np. skrótów innych firm, nie można skopiować.
- Plik możesz skopiować tylko do jednego folderu nadrzędnego. Określanie wielu elementów nadrzędnych nie jest obsługiwane. Jeśli pole
parentsnie jest określone, plik dziedziczy wszystkie wykrywalne elementy nadrzędne z pliku źródłowego. - Chociaż folder jest rodzajem pliku, nie można go skopiować.
Zamiast tego utwórz folder docelowy i ustaw w nim pole
parentsistniejących plików. Następnie możesz usunąć oryginalny folder źródłowy. - Jeśli nie podasz nowej nazwy pliku, metoda
copyutworzy plik o takiej samej nazwie jak oryginał. - Nadmierne korzystanie z
copymoże spowodować przekroczenie limitów interfejsu Drive API. Więcej informacji znajdziesz w sekcji Limity wykorzystania.
Powiązane artykuły
Oto kilka kolejnych kroków, które możesz wykonać:
Aby przesłać dane pliku podczas tworzenia lub aktualizowania pliku, zapoznaj się z sekcją Przesyłanie danych pliku.
Aby utworzyć plik w określonym folderze, zapoznaj się z artykułem Tworzenie pliku w określonym folderze.
Aby przenieść pliki, przeczytaj artykuł Przenoszenie plików między folderami.
Aby dowiedzieć się więcej o metadanych plików, przeczytaj artykuł Zarządzanie metadanymi plików.
Aby usunąć plik, przeczytaj artykuł Przenoszenie plików i folderów do kosza lub ich usuwanie.