2017-05-04 138 views
0

我成功地使用服務帳戶上傳文件。我使用auth服務帳戶上傳,列出和更新文件。獲取服務帳戶Google API中文件的下載鏈接

我看不到瀏覽器中的文件。只有我的應用可以查看它。但是,如何獲得上傳文件的下載鏈接?

任何人都可以幫助我,並給我一個指導,獲得下載鏈接?

回答

0

請記住,服務帳戶不是你。服務帳戶是您將文件上傳到服務帳戶Google雲端硬盤帳戶的虛擬用戶。它上傳的文件將歸它所有。

文件資源應該包含這些鏈接之一。您可以使用它們將文件顯示給其他用戶。

  • 鏈接用戶文件 - webContentLink從file resource(下載)
  • 鏈接用戶文件 - webViewLink形式file resource(將在谷歌驅動的網站打開)

webViewLink字符串用於在瀏覽器中的相關Google編輯器或查看器中打開文件的鏈接。

webContentLink字符串用於在瀏覽器中下載文件內容的鏈接。這僅適用於雲端硬盤中包含二進制內容的文件。

您可能必須讓服務帳戶將文件設置爲公開或與您共享,然後才能使用這些鏈接。檢查Permissions

+0

我看不到它。如果我將它設置爲公開?其他人可以用webContentLink查看文件的權利?但是如果使用瀏覽器Google雲端硬盤,他們無法查看它,因爲該文件未被共享給他們? – JMA

+0

是的,他們應該可以 – DaImTo

0

com.google.api.services.drive.model.File document = null;

try { 
    document = serrvice.files().get(googleFileId).setFields("*").execute(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

然後API返回文件的完整資源。這是針對v3驅動器API的。

如果u使用V2驅動API的使用:

try { 
    document = serrvice.files().get(googleFileId).execute(); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

然後API返回文件的全部資源。

相關問題