【问题标题】:Google Apps Script with forms to check if a doc url is 'shared'带有表单的 Google Apps 脚本,用于检查文档 URL 是否“共享”
【发布时间】:2014-05-25 22:40:10
【问题描述】:

有谁知道“如果”可以使用带有 Google 表单的 Google Apps 脚本来自动检查“如果”粘贴到表单中的文档 URL 是“共享”文档吗?

我是一名教师,我使用 Google 表单来收集学生的作业,但我遇到的最大问题之一是学生经常将 URL 提交给“未共享”的文档以进行评分。我想通过在提交表单之前检查输入的文档 url 以查看它是否是“共享的”来减少/消除这种情况。

这可能吗?如果是的话,有人可以指出我正确的方向吗?

这是我目前使用的表格。
http://mrbenrud.com/index.php/2012-09-08-21-09-45/submit-your-work

【问题讨论】:

    标签: google-apps-script google-drive-api google-forms google-apps-for-education


    【解决方案1】:

    很遗憾,您无法从其 URL 中获取文件,但如果您有 doc Id(其在 URL 中),那么这可能会有所帮助

    如果给定的 doc id 上有编辑器,此函数将返回 true。如果您想检查其他类型或共享(例如查看器),请将getEditors() 替换为getViewers() 等。

    function isShared(docId){
      var editors = DriveApp.getFileById(docId).getEditors()
      if(editors.length > 0){
        return true
      }
      return false 
    }
    

    DriveApp.getFileId(docId).getEditors() 将返回一个编辑器数组。有关更多信息,我会查看参考指南:

    https://developers.google.com/apps-script/reference/drive/file#getEditors()

    【讨论】:

    • 啊哈听起来很熟悉,我在 g+ 上看到了这个问题并在那里回答。要检查它是否专门与脚本所有者共享,请尝试在 try/catch 中打开它。可以从 url 中提取 doc id。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2019-02-13
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    相关资源
    最近更新 更多