You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Google Apps Script获取当前文档的活跃URL?

问题诊断与修正方案
  • 核心错误1:混淆了Google Apps Script(GAS)服务端代码与客户端HTML的JS代码运行环境,DocumentApp 是仅能在GAS服务端运行的类,不能直接写在前端HTML的<script>标签里,浏览器无法识别这个API。
  • 核心错误2:分享到Classroom的按钮缺少动态填充的文档URL参数。

第一步:编写服务端GAS代码(Code.gs文件)

在你的Apps Script项目里新建/打开Code.gs文件,写入如下代码:

// 打开文档时加载自定义菜单,方便触发分享界面
function onOpen() {
  DocumentApp.getUi()
    .createMenu('分享工具')
    .addItem('打开Classroom分享面板', 'openSharePanel')
    .addToUi();
}

// 渲染并打开分享用的HTML侧边栏
function openSharePanel() {
  // 此处的Page对应你自己创建的HTML文件名
  const html = HtmlService.createTemplateFromFile('Page')
  const docUrl = DocumentApp.getActiveDocument().getUrl();
  // 把服务端获取的文档URL传递给HTML模板
  html.fileLink = docUrl;
  const renderedHtml = html.evaluate().setTitle('分享到Classroom');
  DocumentApp.getUi().showSidebar(renderedHtml);
}

第二步:修正HTML文件代码(命名为Page.html即可)

调整后的代码如下:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <script src="https://apis.google.com/js/platform.js" async defer></script>
  <body>
    <!-- 用模板语法插入服务端传递过来的文档URL -->
    <g:sharetoclassroom url="<?= fileLink ?>" size="32"></g:sharetoclassroom>
  </body>
</html>

第三步:测试使用

  • 保存所有代码后刷新你的Google文档,等待几秒后顶部菜单栏会出现分享工具菜单
  • 点击菜单里的打开Classroom分享面板,侧边栏会加载出可直接点击的Classroom分享按钮,点击即可完成当前文档的分享操作

内容的提问来源于stack exchange,提问作者Davis Apas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 23:36:04