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

为什么HTML脚本无法获取Code.gs文件返回的YouTube标题列表?

问题原因

你代码的核心错误是对google.script.run的异步特性理解不到位:google.script.run调用服务端函数时不会同步返回执行结果,你代码里const list = google.script.run.youtube("test")拿到的不是服务端返回的标题数组,后续的document.write自然没有效果。

修复方案

1. 修正前端html代码的逻辑

需要通过withSuccessHandler绑定成功回调,拿到服务端返回的结果后再执行DOM操作,同时建议加withFailureHandler捕获服务端报错,方便排查问题。修正后的youtube.html代码如下:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <button onclick="printData()">Return</button>
    <script>
      function printData(){
        google.script.run
          .withFailureHandler(err => alert("调用失败:" + err))
          .withSuccessHandler(list => {
            // 拿到返回的标题数组后再操作
            document.write(list.join("<br>"))
          })
          .youtube("test")
      }
    </script>
  </body>
</html>

2. 检查服务端依赖配置

如果修改后仍提示调用失败,需要确认你已经在Google Apps Script编辑器中启用了YouTube Data API高级服务:

  • 打开GAS编辑器,点击左侧边栏「服务」+号
  • 找到「YouTube Data API v3」,添加到项目中即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 15:24:04