问题标签 [google-drive-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
13186 浏览

google-drive-api - GET/POST 请求 Google Drive API

我目前正在学习 Google Drive API 和 Qt C++ 开发程序(使用 OAuth2),所以我需要构建查询,但我不知道该怎么做。

例如,如果我提出请求 - https://www.googleapis.com/oauth2/v1/userinfo?access_token=MY_ACCESS_TOKEN,一切正常 - 我会收到回复。

问题是:如何向 Google Drive 发出 SIMILAR 请求?

1)如何获取文件夹和文件列表

2)如何创建文件夹/文件等。

例如,在 POST 请求中“https://www.googleapis.com/drive/v1/files&title=pets&mimeType=application/vnd.google-apps.folder”

我明白了

“错误”:{“错误”:[{“域”:“全局”,“原因”:“解析错误”,“消息”:“解析错误”}],“代码”:400,“消息”:“解析错误” } }

如何获取文件夹和文件的列表,例如等,我不明白

欢迎任何意见/示例!

提前致谢

0 投票
1 回答
1790 浏览

emacs - 为什么我在本地使用 Google Drive API 时收到“经过身份验证的用户没有安装带有客户端 ID 的应用程序”错误?

我正在为 Emacs 开发 Google Drive 界面。这个概念是 Emacs 可以提供一种与平台无关的方式来加载、修改和保存存储在 Google Drive 中的文本文档。我已经注册了我的应用程序并且可以使用 OAuth2 进行身份验证并使用 Docs List API 获取文件列表,但是当我尝试使用 Google Drive API 执行插入时,我看到一个错误:

“经过身份验证的用户尚未安装具有客户端 ID 的应用程序......”

进一步阅读,我似乎需要在 Chrome Web Store 中发布我的 Emacs 应用程序才能访问 Drive API。这对我来说没有意义......我注意到有一个 FUSE 项目正在为 Google Drive 开发,这表明本地开发是可能的。然而,当我浏览代码时,我没有看到 Chrome Web Store 组件可以让它工作。

我是在试图滥用 API,还是有办法让这项工作更有意义?

0 投票
1 回答
1873 浏览

php - 从 google drive api 检索文件元数据

我正在开发一个网络应用程序,让用户查看存储在谷歌驱动器上的视频文件并使用 html5 播放器播放它们。

我使用 Google Picker 来显示用户文件。选择文件时,用户会被重定向到类似 myfile.php?id={file_id} 的 url

在登录页面上,如果我使用下面这样的代码,我会收到一个403 error (failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden).

我是否需要再次检查用户是否已登录?如果是这样,哪种方法更快?

0 投票
1 回答
408 浏览

google-docs-api - 更改提要中的 Google 文档提要 ID/资源 ID 不同

当使用 Google Drive / docs feed 来获取项目时,条目会返回一个 id 和资源 id,结构如下:

我们使用 Google 提要已经有一段时间了,我们使用资源 ID 作为文档的唯一键,以便在系统中返回它。然而,随着新的更改提要取回已删除的项目,谷歌似乎总是返回一个资源 id:

显然,这会导致 ID 匹配失败。谷歌是否建议我们忽略他们的资源 ID 并自己将其解析为真实 ID?

您会在更改提要中为开发人员提供一个 ID 以引用某个项目,这似乎很愚蠢,但在删除该项目后,他们会为我们提供一个完全不同的 ID。

0 投票
1 回答
2016 浏览

android - 当文件大小大于可恢复上传块大小时,文档列表 API 文件上传失败

我正在尝试使用 Documents List API 让 Android 应用程序与 Google Docs/Drive 交互:https ://developers.google.com/google-apps/documents-list

我在使用 GData 可恢复上传协议上传文件时遇到了一些麻烦,即: https ://developers.google.com/google-apps/documents-list#uploading_a_new_document_or_file_with_both_metadata_and_content

我正在使用 512KiB 的块大小。小于块大小的文件上传成功,但大于块大小的文件将在第一个块完成之前失败。即使我将块大小增加到 1MiB 或 2MiB,这也是正确的。一个 768KiB 的文件将失败,块大小为 512KiB,但成功的块大小为 1MiB。

大于块大小的文件确实可以通过第一步,即将 XML 发布到“可恢复创建媒体”链接。然后,我看到用于发送块的 HttpContent 实现的 writeTo() 方法中抛出了 SSLException。此异常发生在FIRST块的中途,例如:

请注意,要查看上述内容,我必须在 writeTo() 方法中实际捕获 IOExceptions(在记录它们后重新抛出它们)。否则,由于内容被突然切断,我只会看到一个通用的“400 Bad Request”响应。

我尝试了一些不同的测试设备,例如 Galaxy Nexus (VZW/CDMA, 4.0.2, stock), Droid4 (Moto 2.3.6, stock) DroidX (stock)。

上传第一个块的请求的标头:

感谢您的任何建议。

更新:添加代码片段,这是放置下一个块的位。

另一个可能很重要的注意事项:SSLException 失败是由 Content-Range 标头的存在触发的。如果我省略它,则第一个大于块大小的文件将成功上传,无一例外。服务器返回 201 Created 并创建了截断 512KiB 大小的文件。

再次感谢!

更新 2

我现在有一个纯 Java 应用程序可用于演示该问题。这被打包为一个包含库的 Eclipse 项目,但在其他地方使用应该很简单。 http://android.nextapp.com/test/DriveUpload.zip

需要一个身份验证令牌来测试它。它需要三个命令行参数才能运行:

[文件名] [内容/类型] [AuthToken]

(我目前正在从真实应用程序的调试输出中剪切/粘贴 authtokens)

这是此应用程序的修剪输出:

0 投票
1 回答
984 浏览

java - Google Drive SDK DrEdit Java 版本返回 401 错误

我正在尝试完全按照说明中的说明在 GAE 上运行 Java DrEdit 示例。我已经到了可以从文档创建一个新的“dredit”文档,允许身份验证并进入实际应用程序的地步,但是对于返回到 gdrive 的每个操作,我都会在 GAE 日志中得到这个:

我在 7 上所做的与说明不同的地方:

在项目的 Eclipse 构建路径编辑器中,将 war/WEB-INF/lib/ 目录中的所有 JAR 添加到项目的构建路径中。

我也在 lib/dependencies 下添加了库,只是添加了 lib 留下了编译错误。

0 投票
1 回答
17182 浏览

c++ - 适用于 C 或 C++ 的 Google Drive API

Google Drive 是否有 C 或 C++ API?

我查看了 Google API 开发人员网站,但在那里我只能找到 Java、PHP、Ruby、Python 和 C# 的 API。

我想开发一个简单的 C/C++ 命令行二进制文件来将本地文件夹同步到远程文件夹。

0 投票
1 回答
584 浏览

google-app-engine - 在本地机器上开发 Google App Engine OAuth2 Java API 应用程序的最佳实践

我正在尝试在本地调试 Google App Engine 项目,并且该应用程序使用 Google 的 OAuth2 API 访问(Google Drive 访问)。我在我的 hosts 文件中将一个子域映射到 127.0.0.1 并确保该子域没有公开返回 404(Google 进行了基本测试以查看重定向位置是否有任何内容)并且重定向正确执行我本地机器上的 servlet。

问题是我现在似乎有一个匿名配额,并且很快超过了我当天的限制。有没有办法通过此设置将我链接到我的帐户以获得非匿名配额?

0 投票
0 回答
140 浏览

google-drive-api - 即使在安装应用程序后,我也面临“经过身份验证的用户尚未安装具有客户端 ID 的应用程序”错误

可能重复:
为什么我在本地使用 Google Drive API 时收到“经过身份验证的用户没有安装带有客户端 ID 的应用程序”错误?

我已经创建了我的应用程序的网络商店列表并安装了它,但在尝试插入文件时仍然遇到错误“经过身份验证的用户尚未安装具有客户端 ID 的应用程序”。

它的确切原因是什么?

0 投票
1 回答
745 浏览

google-docs-api - Google Drive API 是否支持上传内容范围?

与此问题类似:Google Drive API 如何支持 Content-Range 下载请求?

但对于上传。如果您想更新现有文件中的某些字节,Drive/Docs API 是否允许您设置范围?