2012-07-24 46 views
4

我一直在阅读Google Drive API文档,但我不明白如何创建外部文件的快捷方式。到目前为止,我已经通过在Linux中的命令行中使用openssl s_client执行HTTP POSTs到www.googleapis.com来了解如何登录和上载文件。如何使用Google Drive API创建快捷方式?

的部分 Creating Google Drive shortcuts to external files页面硬盘应用工作原理这样描述的快捷键:。 “快捷方式的行为类似于文件,他们可以打开和创建索引的搜索,并与其他用户共享不同于常规的文件,快捷方式做不包含任何内容,并且当同步到桌面时在用户浏览器中以URL的形式打开。已同步的快捷方式文件被分配了.glink扩展名。“

这里的这个部分表示至少在同步到桌面时,在浏览器中打开快捷方式。 (对于我来说,如果您通过浏览器使用Google Drive并尝试点击快捷方式,会发生什么情况仍然不清楚。)这似乎也表示快捷方式的文件扩展名为.glink,但这里同步的意思是什么?如果我向www.googleapis.com发布HTTP请求以创建快捷方式,是否需要将.glink指定为文件扩展名?

我提到的页面说去Create a shortcut to a file有关如何创建快捷方式的说明。该页告诉我使用什么样的mimetype,并说要检查files.insert的文档。在该页面上,我找不到有关如何创建快捷方式的任何信息。

那么你如何创建一个快捷方式?是否有一个参数files.insert您指定一个URL重定向到用户?

回答

5

Google云端硬盘快捷方式用于展示哪些内容存储在用户云端硬盘中的第三方网络应用中。

当用户点击快捷方式时,用户将被重定向到已注册的第三方网站,并在?state查询参数中使用Google Drive文件ID,如Open Files中所述。使用提供的Google云端硬盘文件ID来匹配其内部ID并获取内容取决于第三方应用。

创建一个快捷方式做的方式相同,唯一的例外是,mimeType需要被设置为application/vnd.google-apps.drive-sdk插入新文件的元数据:

POST https://www.googleapis.com/drive/v2/files 
Authorization: <AUTHORIZATION HEADER> 

{ 
    "title": "File's title", 
    "description": "File's description", 
    "mimeType": "application/vnd.google-apps.drive-sdk" 
} 

POST请求将创建一个快捷方式到您的应用程序。 Drive API将知道哪个应用程序创建了包含此信息的授权标题的快捷方式。