תיקיית נתוני האפליקציה היא תיקייה מיוחדת ומוסתרת שהאפליקציה יכולה להשתמש בה כדי לאחסן נתונים ספציפיים לאפליקציה, כמו קובצי הגדרה. תיקיית נתוני האפליקציה נוצרת אוטומטית כשמנסים ליצור בה קובץ. אפשר להשתמש בתיקייה הזו כדי לאחסן קבצים שהמשתמש לא אמור ליצור איתם אינטראקציה ישירה. הגישה לתיקייה הזו מותרת רק לאפליקציה שלכם, והתוכן שלה מוסתר מהמשתמש ומאפליקציות אחרות של Google Drive.
תיקיית נתוני האפליקציה נמחקת כשמשתמש מסיר את האפליקציה מתיקיית 'האחסון שלי'. המשתמשים יכולים גם למחוק את תיקיית הנתונים של האפליקציה באופן ידני.
היקף התיקייה של נתוני האפליקציה
כדי לגשת לתיקיית נתוני האפליקציה, צריך לבקש גישה להיקף https://www.googleapis.com/auth/drive.appdata
לא רגיש. מידע נוסף על היקפים ועל בקשת גישה אליהם זמין במאמר בחירת היקפים של Google Drive API. למידע נוסף על היקפי הרשאות ספציפיים של OAuth 2.0, אפשר לעיין במאמר היקפי הרשאות של OAuth 2.0 ל-Google APIs.
מה ההבדל בין תיקיית נתוני האפליקציה לבין תיקיות הגיבוי ב-Drive
תיקיית נתוני האפליקציה נפרדת מתיקיית הגיבוי שלכם ב-Drive.
תיקיית נתוני האפליקציה היא תיקיית הגדרות שנוצרת לכל אפליקציה של צד שלישי, וכל אפליקציה כזו יכולה לאחסן בה נתונים. רק לאפליקציה שיצרה את הנתונים ב-appDataFolder
יש גישה אליהם. אי אפשר לגשת לתיקייה באמצעות ממשק המשתמש של Drive.
תיקיית הגיבוי ב-Drive היא תיקייה שמורה ש-Drive כותב אליה גיבויים של מכשירים, והיא גלויה בממשק המשתמש של Drive.
מגבלות על תיקיית נתוני האפליקציה
ההגבלות הבאות נאכפות כשעובדים עם תיקיית נתוני האפליקציה:
אי אפשר לשתף קבצים או תיקיות בתוך תיקיית נתוני האפליקציה. ניסיון לעשות את זה יוביל לשגיאה
notSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "השיטה לא נתמכת עבור קבצים בתיקייה Application Data".אי אפשר להעביר קבצים ב
appDataFolder
בין מיקומי אחסון (מרחבים). ניסיון לעשות את זה יוביל לשגיאהnotSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "השיטה לא נתמכת עבור קבצים בתיקיית נתוני האפליקציה". מידע נוסף זמין במאמר בנושא ארגון קבצים.אי אפשר להעביר קבצים או תיקיות לתיקיית האשפה בתוך תיקיית נתוני האפליקציה. ניסיון לעשות את זה יוביל לשגיאה
notSupportedForAppDataFolderFiles
עם הודעת השגיאה הבאה: "אי אפשר להעביר קבצים בתיקיית נתוני האפליקציה לאשפה".
יצירת קובץ בתיקיית נתוני האפליקציה
כדי ליצור קובץ בתיקיית נתוני האפליקציה, מציינים appDataFolder
במאפיין parents
של הקובץ ומשתמשים בשיטה files.create
כדי ליצור את הקובץ בתיקייה.
בדוגמת הקוד הבאה מוצגות שתי דרכים להוספת קובץ לתיקייה: באמצעות ספריית לקוח ופקודת curl.
Java
Python
Node.js
PHP
.NET
curl
בקשה:
curl --request POST \
'https://content.googleapis.com/drive/v3/files' \
-H 'authorization: Bearer ACCESS_TOKEN' \
-H 'content-type: application/json' \
-H 'x-origin: https://explorer.apis.google.com' \
--data-raw '{"name": "config.json", "parents":["appDataFolder"]}'
מחליפים את ACCESS_TOKEN באסימון OAuth 2.0 של האפליקציה.
תשובה:
{
"kind": "drive#file",
"id": FILE_ID,
"name": "config.json",
"mimeType": "application/json"
}
מידע נוסף על יצירת קבצים בתיקיות זמין במאמר יצירה של תיקיות והוספת קבצים לתיקיות.
חיפוש קבצים בתיקיית נתוני האפליקציה
כדי לחפש קבצים בתיקיית נתוני האפליקציה, מגדירים את השדה spaces
לערך appDataFolder
ומשתמשים בשיטה files.list
.
בדוגמת הקוד הבאה מוצגות שתי דרכים לחיפוש קבצים בתיקיית נתוני האפליקציה: באמצעות ספריית לקוח ופקודת curl.
Java
Python
Node.js
PHP
.NET
curl
בקשה:
curl \
-X GET \
-H "Authorization: Bearer ACCESS_TOKEN" \
"https://www.googleapis.com/drive/v3/files?spaces=appDataFolder&fields=files(id,name,mimeType,size,modifiedTime)"
מחליפים את ACCESS_TOKEN באסימון OAuth 2.0 של האפליקציה.
תשובה:
{
"files": [
{
"mimeType": "application/json",
"size": "256",
"id": FILE_ID,
"name": "config.json",
"modifiedTime": "2025-04-03T23:40:05.860Z"
},
{
"mimeType": "text/plain",
"size": "128",
"id": FILE_ID,
"name": "user_settings.txt",
"modifiedTime": "2025-04-02T17:52:29.020Z"
}
]
}
הורדת קבצים מתיקיית נתוני האפליקציה
כדי להוריד קובץ מתיקיית נתוני האפליקציה, משתמשים בשיטה files.get
עם פרמטר כתובת ה-URL alt=media
כדי לאחזר את תוכן הקובץ בגוף התגובה. מידע נוסף ודוגמאות קוד זמינים במאמר הורדת תוכן של קובץ blob.
בדוגמת הקוד הבאה אפשר לראות איך מורידים קבצים בתיקיית נתוני האפליקציה באמצעות פקודת curl. גוף התגובה משתנה בהתאם למה שנשמר.
curl
בקשה:
curl \
-X GET \
-H "Authorization: Bearer ACCESS_TOKEN" \
"https://www.googleapis.com/drive/v3/files/FILE_ID?alt=media"
מחליפים את מה שכתוב בשדות הבאים:
- ACCESS_TOKEN: אסימון OAuth 2.0 של האפליקציה.
- FILE_ID: המזהה של הקובץ שרוצים להוריד.