簡體   English   中英

Google Drive API v3 更改文件的元數據

[英]Google Drive API v3 changing metadata of file

我在更改谷歌驅動器上的文件元數據時遇到問題。 我得到了從驅動器下載文件的腳本,下載后我想用星號標記文件(星號=真)。

我找到了 v2 API 的解決方案,但它不適用於 v3,我收到錯誤“資源主體包含不可直接寫入的字段”。

我閱讀了 v3 的文檔,但沒有找到如何更改元數據的解決方案。

file = service.files().get(fileId=file_id).execute()
file['starred'] = True
service.files().update(fileId=file_id, body=file).execute()

謝謝你的幫助。

您遇到的問題是您正在執行 file.get 首先。

file = service.files().get(fileId=file_id).execute()

這將填充完整的文件資源 object。並且由於更新方法使用補丁方法,它會嘗試更新您發送的每個屬性,其中一些是不可寫的。 您應該只發送要更新的字段。

嘗試這個。

file_metadata = {'starred': true}

updated_file = service.files().update(
            fileId='id_file_in_google_drive',
            body=file_metadata ).execute()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM