我使用的 IDE 是 Eclipse 4.2 Juno。我没有编译或导入错误。这是我目前使用的代码(有些是从教程中公然复制的,有些是改编的,有些我不知道它来自哪里):
public static void print()
{
HttpTransport httpTransport = new NetHttpTransport();
JsonFactory jsonFactory = new JacksonFactory();
Drive serv = new Drive(httpTransport, jsonFactory,null);
try {
File f = serv.files().get("1K5Ge9-Rz_L2gJH5hKrpkAfFDos5ZgRCvnzy7_HaiAV8").execute();
System.out.println(f.getId());
//System.out.println(f.getDownloadUrl());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
错误与“文件 f = ...”有关。我收到 403 使用限制错误。查看代码,这是意料之中的,因为它没有按照 Google 文档中的要求进行身份验证。
该应用程序是一个简单的可执行 .jar,它从各种来源(在本例中为 google 驱动器)获取内容,然后调用外部程序对其进行转换。如果我能掌握文档的元数据,我就可以用它来更好地为用户服务。但是,内容必须公开。那么如何在不询问用户个人信息或打开他们的网络浏览器的情况下从文档链接中获取数据呢?是的,我有一个 API 密钥。
我知道它可以工作,因为这里的概念证明让我可以选择是否使用 OAuth2.0。作为记录,我目前正在从文档列表迁移。
编辑 在发布这个问题后不到 5 分钟我会弄明白才有意义。我只需要构建一个类似于“https://www.googleapis.com/drive/v2/files/document_id ?key= key ”的 URL,我就可以获得我想要的所有数据。
新问题,将我的密钥放在源代码中是否明智?