使用Google Apps Script回复YouTube评论报错:Comments cannot be empty
错误原因及修复方案
核心错误点
- API方法误用:
CommentThreads.insert的作用是创建视频下的顶级评论线程(即直接在视频下发布第一条评论),而非回复已有评论。回复指定评论必须使用YouTube.Comments.insert方法。 - 资源结构错误:回复评论的资源对象不需要包含
channelId和videoId(这些信息会通过parentId自动关联到对应视频和评论线程),原结构的参数组合导致API无法识别有效评论内容。
修正后的代码
function replyToComment() { const parentCommentId = "UgyvUFY31md_zpE9eqV4AaABAg"; // 要回复的目标评论ID const replyText = "Hi"; // 回复内容 const resource = { snippet: { parentId: parentCommentId, textOriginal: replyText } }; // 使用正确的API方法插入评论回复 YouTube.Comments.insert(resource, "snippet"); }
额外说明
- 原函数中
var fc,vid,ytch的声明与函数参数重复,会覆盖传入的参数值,可根据实际需求调整参数逻辑。 - 确保你的Google Apps Script项目已启用YouTube Data API v3,且授权了
https://www.googleapis.com/auth/youtube.force-ssl权限(这是发布评论/回复必需的权限)。
内容的提问来源于stack exchange,提问作者Nived Padikkal
相关产品推荐
相关产品推荐

