在 ruby​​ 中为谷歌驱动器文件创建编辑链接

Posted

技术标签:

【中文标题】在 ruby​​ 中为谷歌驱动器文件创建编辑链接【英文标题】:Create edit link for google drive files in ruby 【发布时间】:2022-01-19 15:16:01 【问题描述】:

我正在为 ruby​​ 使用“google_drive”gem。我可以在 ruby​​ 中创建一个列表谷歌驱动器文件。有没有办法将权限设置为 type: 'anyone', role: 'writer' 并在 ruby​​ 中创建一个链接来查看或编辑我创建的谷歌驱动器文件?

谢谢,安德烈亚斯

【问题讨论】:

【参考方案1】:

使用GoogleDrive::File#human_url

您没有具体说明您是如何创建文件的,但 file 的每个实例都有一个 #human_url - 这是指向该文件的链接,可让您在 Web 中查看或编辑该文件浏览器。

示例:

session = GoogleDrive::Session.from_config("config.json")
session.upload_from_file("/path/to/hello.txt", "hello.txt", convert: false)
file_url = session.file_by_title("hello.txt").human_url

更新

要设置权限,请使用#create_permission(file_id, permission_object)方法指定permission object。

示例:

permission = type: "user", role: "writer", email_address: "user's email"
session.drive_service.create_permission(current_user.fileId, permission)

通过#resource_id ,可以像文件URL一样检索文件ID。

【讨论】:

谢谢,这与我正在寻找的非常接近。我只想事先将权限设置为 type: 'anyone', role: 'writer'。 您当前如何设置这些权限(从您的问题我了解到您已经创建了一个具有必要权限的文件并且只错过了检索 url 部分)?看看你的代码会很有帮助! 我还没有设置任何权限。我的目标是通过 API 生成文件并为用户提供直接编辑文档的链接。但你是绝对正确的,我必须更新我的问题。 我更新了我的问题,向您展示如何设置权限。因此,作为一般规则,*** 上的每个端口应该是一个问题:-)

以上是关于在 ruby​​ 中为谷歌驱动器文件创建编辑链接的主要内容,如果未能解决你的问题,请参考以下文章

在 yaml 文件中为谷歌应用引擎设置 url(找不到页面)问题

如何在 analytics.js 中为谷歌分析设置页面速度日志记录

为谷歌地图动态创建/下载样式

如何将坐标转换为谷歌友好坐标

如何将地址转换为谷歌地图链接(不是地图)

Trello 新卡创建/修改为谷歌表格