0

我使用 google Filepicker 让用户选择目标文件,然后从浏览器中的选择器中获取文件 ID。我让用户将此 id 发布到我的 servlet,我希望 servlet 下载此文件进行处理。

我正在努力解决如何使用这个 java 代码,如示例中所示。在下面的代码示例中,如何实例化 Drive 和 File?请假设文件 id 已经可以从 Google Picker 获得。

private static InputStream downloadFile(Drive service, File file) {
        if (file.getDownloadUrl() != null && file.getDownloadUrl().length() > 0) {
          try {
            HttpResponse resp =
                service.getRequestFactory().buildGetRequest(new GenericUrl(file.getDownloadUrl()))
                    .execute();
            return resp.getContent();
          } catch (IOException e) {
            // An error occurred.
            e.printStackTrace();
            return null;
          }
        } else {
          // The file doesn't have any content stored on Drive.
          return null;
        }
      }
4

1 回答 1

0

Google Drive 文档解释了如何检索 OAuth 2.0 凭据以及如何使用它们来实例化服务对象:

https://developers.google.com/drive/credentials

Picker API 只为您提供已选择文件的 ID。您必须发送files.get请求以检索文件元数据,即片段中的 File 对象:

https://developers.google.com/drive/v2/reference/files/get

于 2013-02-12T21:59:11.407 回答