为什么 Google Drive getExportLinks 返回 null?

Vad*_*Vad 5 java ms-word

我正在上传Word文档:

    com.google.api.services.drive.model.File body = new com.google.api.services.drive.model.File();
    body.setTitle(file.getName());
    body.setMimeType(mimeType);

    FileContent mediaContent = new FileContent(mimeType, file);

    com.google.api.services.drive.model.File uploadedFile = service.files()
            .insert(body, mediaContent).execute();

    String downloadUrl = file.getExportLinks().get(mimeType);
Run Code Online (Sandbox Code Playgroud)

上传顺利。但是,调用 file.getExportLinks() 返回 null,因此该行是一个空指针。有谁知道为什么 getExportLinks() 返回 null?

edd*_*son 1

获取文档密钥并创建链接,如下所示:

Drive driveService = new Drive.Builder(TRANSPORT, JSON_FACTORY, credential).build();
File file = driveService.files().get(this.spreadsheetKey).execute();
String downloadUrl = file.getExportLinks().get("application/pdf");
Run Code Online (Sandbox Code Playgroud)

下载网址示例: https://docs.google.com/feeds/download/spreadsheets/Export ?key= somekey &exportFormat=pdf

注意:您可以将上述网址粘贴到浏览器中,只要您登录Google Drive,就会下载。

不知道是否可以在没有文档密钥的情况下创建链接。