使用 App 脚本在 Google 驱动器中创建 "Open With..." 外部 Link
Create "Open With..." External Link in Google Drive with App Script
我正在尝试通过我的加载项的应用脚本在 Google 驱动器(mime 类型 application/vnd.google-apps.drive-sdk
)中创建外部 link。端到端的目标是创建这个文件,将 id 发送到外部服务(我的服务),这样,当我的用户在 Google Drive 中的这个文件上单击“打开方式...”时,它会将它们与 state
参数(包含 fileId
)一起发送到我的服务,我可以用它做正确的事 (TM)。
出于某种原因,我似乎无法在 App 脚本中获取 DriveApp
API 来执行此操作。代码是:
const file = DriveApp.createFile('DriveAppFile', '', 'application/vnd.google-apps.drive-sdk');
createFile
调用失败 Error Exception: Invalid argument
。据我所知,解释器不喜欢 mimeType
参数。我明确地将内容设置为空字符串,因为根据 Google 的文档,这是 application/vnd.google-apps.drive-sdk
类型的文件所必需的。我也尝试了 null
的内容,但无济于事。有谁知道为什么这不起作用?
另一条信息:出于好奇,我尝试使用 googleapis:v3
从测试 nodeJS 应用程序执行相同的操作,令人惊讶的是,一切正常。虽然它确实有效,但这对我的用户来说不是一个好的选择,因为我不想让他们从我的外部应用程序 OAuth 连接到 Google 只是为了在他们已经通过我的 OAuth 进行时执行这一操作附加组件。
您分享的mimeTypes
文档实际上与Drive API
相关,与DriveApp
不同。
如果你想使用application/vnd.google-apps.drive-sdk
mime类型,我建议你按照评论中提到的方式使用它
Drive.Files.insert({title: "DriveAppFile", mimeType: "application/vnd.google-apps.drive-sdk"})
为了启用高级驱动服务,您必须转到服务 > 添加服务。 ..
备注
请务必牢记,Drive Advanced Service 使用 Drive API v2.
如果要使用DriveApp
,支持的mime类型已列出here。
参考资料
我正在尝试通过我的加载项的应用脚本在 Google 驱动器(mime 类型 application/vnd.google-apps.drive-sdk
)中创建外部 link。端到端的目标是创建这个文件,将 id 发送到外部服务(我的服务),这样,当我的用户在 Google Drive 中的这个文件上单击“打开方式...”时,它会将它们与 state
参数(包含 fileId
)一起发送到我的服务,我可以用它做正确的事 (TM)。
出于某种原因,我似乎无法在 App 脚本中获取 DriveApp
API 来执行此操作。代码是:
const file = DriveApp.createFile('DriveAppFile', '', 'application/vnd.google-apps.drive-sdk');
createFile
调用失败 Error Exception: Invalid argument
。据我所知,解释器不喜欢 mimeType
参数。我明确地将内容设置为空字符串,因为根据 Google 的文档,这是 application/vnd.google-apps.drive-sdk
类型的文件所必需的。我也尝试了 null
的内容,但无济于事。有谁知道为什么这不起作用?
另一条信息:出于好奇,我尝试使用 googleapis:v3
从测试 nodeJS 应用程序执行相同的操作,令人惊讶的是,一切正常。虽然它确实有效,但这对我的用户来说不是一个好的选择,因为我不想让他们从我的外部应用程序 OAuth 连接到 Google 只是为了在他们已经通过我的 OAuth 进行时执行这一操作附加组件。
您分享的mimeTypes
文档实际上与Drive API
相关,与DriveApp
不同。
如果你想使用application/vnd.google-apps.drive-sdk
mime类型,我建议你按照评论中提到的方式使用它
Drive.Files.insert({title: "DriveAppFile", mimeType: "application/vnd.google-apps.drive-sdk"})
为了启用高级驱动服务,您必须转到服务 > 添加服务。 ..
备注
请务必牢记,Drive Advanced Service 使用 Drive API v2.
如果要使用
DriveApp
,支持的mime类型已列出here。