问题标签 [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 投票
1 回答
598 浏览

google-docs-api - 文档列表 API 请求的配额是多少?

我们目前正在我们的移动应用程序中集成 Google Drive/Docs 访问权限,并为此目的使用 Google Document List API。单个 API 密钥允许的请求数量是否有任何限制?

我在 Google API 控制台中找不到任何信息,因为那里没有列出 Document List API。我只能激活 Google Drive API(它还不支持我们需要的功能)。

0 投票
1 回答
454 浏览

python - 如何使用递归集合列表来构建目录结构?

如何做一个简单的递归列表来构建目录结构?

我正在使用 gdata python 客户端库。查看 client.py 和 data.py,没有直接的方法来列出和构建目录结构。

我正在做的是:(假设 self.client 已通过身份验证)

  1. self.client.GetAllResources(包括 showfolders=true)
  2. 对于每个资源检查 resource.in_collections()

有没有比上面更好的方法?

谢谢

0 投票
2 回答
1175 浏览

google-drive-api - Google Drive 协作编辑器

随着 Google Drive 的推出,我一直在查看可用的 API 和信息。我没有找到它甚至可能的例子或信息。

我想创建一个两个用户可以同时协作的编辑器。我们都看到了谷歌自己的编辑器是如何做到这一点的。

这个想法是为了创建一个演示,两个程序员可以在同一个项目上工作,并在同一个文件上工作,用替代解决方案替换 subversion 或其他团队解决方案。

任何人都可以在 google api 或其他地方找到任何示例,或者更好地分享一些经验/代码。

我认为这是可能的,因为 WeVideo 发布了一个用于协作视频编辑的应用程序。

0 投票
1 回答
148 浏览

google-drive-api - 为什么文件更新有时会返回 drive:v1 作为文件 ID?

在多次成功的文件更新后,有一次更新返回的文件 id 是 drive:v1 而不是有效的文件 id。此外,根据 App Engine 日志,有问题的请求需要 10 秒(通常不到 1 秒),而不是因为 App Engine 实例启动时间非常奇怪。

我使用的代码基于 Google Drive SDK Python 示例应用程序 DrEdit,并且只做了一些修改(我添加了 Base64 编码,因为我传输的是微小的图像,而不是文本)。

更具体地说,在 ServiceHandler 类的 put 方法的示例代码中,这段代码应该在更新文件后返回文件 id:

这工作了很多次,但有一次它返回驱动器:v1。更新仍然正确地更改了文件,除了文件 id 问题之外,请求正常工作。

这是我对受此影响的示例代码部分所做的修改:

顺便说一句,put 方法中的注释“使用新的文件 ID 作为 JSON 响应”使它看起来在更新文件后文件 ID 会更改,但似乎并非如此。这很令人困惑,除非文件 id 有时在更新后确实发生了变化,否则更改它可能是一个好主意。

0 投票
2 回答
678 浏览

c# - DrEdit 示例无法打开 txt 文件

我将一个 .txt 文件复制到我的 google 驱动器并尝试使用 DrEdit C# 示例打开它。当我尝试打开文件时,ASP.NET 服务器从服务器收到 403 禁止响应。响应正文说:

The authenticated user has not installed the app with client id 229016086359-m19r73ngg9pr863m5h7eso151kcc2uut.apps.googleusercontent.com [403]

我也无法使用示例保存新文件。我想我很接近,但不确定是什么导致了这个问题。文档对配置设置并不完全清楚,所以我可能弄错了其中一个,这就是我正在做的事情:

  1. ClientCredentials.cs - CLIENT_ID - 设置为“API 访问”页面上“Drive SDK 的客户端 ID”部分中的“客户端 ID”值
  2. ClientCredentials.cs - CLIENT_SECRET - 设置为“API 访问”页面上“Drive SDK 的客户端 ID”部分中的“客户端密码”值
  3. ClientCredentials.cs - REDIRECT_URI - 设置为我的 ASP.NET 应用程序的基本 URL
  4. dredit.js - 第 104 行的 setAppId('') - 在 Drive SDK 页面上设置为“App Id:”的值
  5. manifest.json - app_console_project_id - 在 Drive SDK 页面上设置为“App Id:”的值

我确实通过 chrome 网上商店上传了该应用程序,发布到测试帐户并从 chrome 网上商店安装了该应用程序。这是我正在做的事情:

  1. 启动应用程序(从网上商店或通过 URL)。
  2. 在请求权限屏幕上允许访问
  3. 关闭 untitled.txt 的编辑详细信息对话框
  4. 单击打开按钮 - 它显示了我从 Windows 处理到谷歌驱动器的文本文件
  5. 双击文本文件,它会显示空白的编辑屏幕,顶部有一个“加载”按钮。网络流量显示我收到 500 内部服务器错误,响应正文显示 403 正在从谷歌驱动器返回到 ASP.NET 应用程序

谢谢你的帮助!

0 投票
1 回答
233 浏览

google-drive-api - 在 Google Drive Apps Collection 中列出

我在 Chrome 网上应用店中发布了适用于 Google Drive 的应用程序。我认为它可能会自动添加到 Google Drive Collection 中,但那没有发生。有什么我必须提交的表格吗?

0 投票
2 回答
2354 浏览

google-drive-api - 将文件插入到 google drive 发送的下载 url

我正在尝试通过 API 将文件插入到谷歌驱动器。

我成功地将新文件元数据发布到驱动器并收到包含下载 url 的 JSON 响应。

在下一步中,我尝试将文件的内容发布到提供的下载 url,因此我能够成功插入文件,但其内容不可见。

谁能告诉我文件内容应该以哪种格式发布?

0 投票
1 回答
837 浏览

google-drive-api - 创建内部 Google Drive 应用程序而不在 Chrome Web Store 上发布

是否可以使用 Google Drive API 创建 Google Drive Web 应用程序而不将应用程序发布到 Chrome 网上应用店?

我试图实现它。身份验证现已完成,但现在它抱怨:“403:经过身份验证的用户尚未安装客户端 ID {clientid} 的应用程序”

提前致谢!

问候,

佩德罗

0 投票
1 回答
145 浏览

google-docs-api - 查找最大更改戳

我正在使用 gdata-python-client。有没有办法获得最大更改戳?

我使用 gdata.docs.DocsClient.GetAllResources() 构建了完整的目录结构。要轮询新更改,我想获得最大更改戳。

我现在唯一能想到的方法是迭代地请求多个 DocsClient.GetChanges(changestamp=i+100, max_results=100) - 如果我有数千个更改,这会很昂贵。

谢谢

0 投票
1 回答
1582 浏览

php - Google Drive SDK 服务帐户错误“经过身份验证的用户尚未安装具有客户端 ID 的应用程序...”

我正在尝试使用 Google Drive SDK 服务帐户创建一个可以在后台运行的 Google Drive 应用程序(例如 cronjob),无需任何用户交互,但它给了我这个错误,我不明白为什么:

调用 POST https://www.googleapis.com/upload/drive/v1/files?uploadType=multipart时出错:(403)经过身份验证的用户尚未安装客户端 ID 为 {my_client_id} 的应用程序

在 Google API 控制台上,我已经激活了 Drive API 和 Drive SDK。在 Drive SDK 选项卡上,我已经设置了所有必需的信息。我还向 Chrome 网上应用店发布了仅供测试人员使用的应用程序,并将其安装到我的 Google Chrome 中,应用程序名称出现在我的 Google Drive“创建”菜单上。

这是我的代码片段:

据我了解,应用程序可以代表用户使用 Google Drive SDK 的服务帐户。这是否意味着用户没有身份验证问题(请求权限)?那么应用程序如何验证自己呢?或者我的理解可能是错误的?请在这里帮助启发我。