2012-08-30 36 views
3

我仍在學習Google Drive API的來龍去脈。我試圖爲它創建一個文件瀏覽器,以層次結構顯示項目,而不是顯示列出的所有文件,而不管它的父項如何。Google Drive API(PHP):某些文件缺少父級參考

我遇到的問題是有一些空父母數組的文件。這個想法最初是它應該顯示所有存在於根目錄下的文件,並且只顯示根目錄,然後當一個文件夾被點擊時顯示它的子目錄。

但是,遺失的父母數據讓我感到困惑。

這是因爲這些文件已與我共享,因此沒有父親引用關係到我?如果是這樣,我如何識別這些文件?在返回的父數據上使用empty()似乎並不認爲它是一個空數組。

回答

1

我做了一個快速測試,並得到了相同的結果。 它是有道理的,你不應該被給予共享文件的父母的任何可見性。

要知道文件是否共享,請查看userPermission數組。

擁有...

"userPermission": { 
    "kind": "drive#permission", 
    "id": "me", 
    "role": "owner", 
    "type": "user" 
    }, 

共享...

"userPermission": { 
    "kind": "drive#permission", 
    "id": "me", 
    "role": "writer", 
    "type": "user" 
    }, 
+0

感謝你的回覆,這基本上就是我假設,但是我會用「 sharedWithMeDate「值來檢查它是否被共享,但你的似乎是一個更明智的選擇。再次感謝您的回覆 – PhilWheatley

+0

我認爲這取決於您希望達到的目標。所有權可能會轉移。檢查權限將列出您現在是所有者的文件,無論這些文件是如何發生的。檢查sharedWithMeDate將查找與您共享的文件,而不管您是否現在是所有者。 你也可以選擇在所有者集合中查詢q =「not」[email protected]「所有者」 – pinoyyid

+0

我看,我從來沒有考慮過所有權轉讓,只注意到「sharedWithMeDate」字段只存在於有已經分享了,感謝您在玩過谷歌驅動器上的共享之後指出這個疏忽 – PhilWheatley