我的应用程序会在google drive中创建一个电子表格,并将链接发送到用户的电子邮件中。当用户打开电子邮件并点击链接时,他/她将被重定向到
docs.google.com/spreadsheets/d/"spreadSheetId"
并访问所生成的文件。但这个文件默认情况下是公开的(对任何人在互联网上的链接-一般访问),如图所示。如何使用node.js将General Access类型更改为RESTRICTED,并仅给予访问权限授予指定的用户?
我使用“googleapis”npm包(版本49)和范围:
2条答案
按热度按时间fjaof16o1#
您可以使用permissions create方法授予用户对文件的访问权限,而不是将文件公开。
应该是这样的。如果它不起作用,请告诉我,我没有时间测试它。
e5nqia272#
要将文件常规访问权限从
Anyone with the link
更改为Restricted
,可以使用permissions.delete
方法。我目前无法使用node.js进行测试,但根据示例,请求看起来像这样:
另外,在您的评论中,我看到您由于错误
"Sorry, cannot transfer ownership to user@email.com. Ownership can only be transferred to another user in the same organization as the current owner."
而在转移文件所有权时遇到问题此行为是由于Google云端硬盘的工作方式,因为您无法将文件所有权转移到其他域。
已知限制和替代方案
您无法将所有权转让给外部用户,例如个人Google帐户或其他组织中的用户。此限制旨在保护用户和公司数据免受未经授权的传输和访问。根据您组织的共享策略,您可以使用以下替代方案。
参考资料