为什么我在使用 Google Classroom API 的 StudentSubmissions.turnIn() 时收到 403 错误?

问题描述 投票:0回答:1

我给学生提供带有作业的谷歌表格,当他们提交表格时,我希望它能够将课堂上的作业更新为“已上交”。但是,我遇到了这个错误。我有所有正确的 courseId、courseWorkId 和学生提交 ID。

该程序与创建作业的程序相同,因此我在开发者控制台身份验证方面不应该遇到任何问题。我认为这是由于这个(来自文档):

“这只能由拥有指定学生提交内容的学生调用。”

这是否意味着我需要获得学生的许可才能上交自己的作业?

这是有问题的代码行:

response = subs.turnIn({},courseId,courseWorkId,response.studentSubmissions[0].id);

这是错误:

GoogleJsonResponseException: API call to classroom.courses.courseWork.studentSubmissions.turnIn failed with error: The caller does not have permission
at handleFormSubmit(makeHomeworkForm:195:62)
javascript google-apps-script google-classroom
1个回答
0
投票

不幸的是,对于您的用例来说,这是预期的行为。

“这只能由拥有指定的学生调用 学生提交。”

这是否意味着我需要获得学生的许可才能 交自己的作业吗?

不完全是。这意味着学生需要提供凭证才能通过 API 提交作业。我认为这个功能请求描述了您正在寻找的行为。并且您已经注意到“该程序[必须]与创建作业的程序相同”的限制;还有另一个功能请求也可以放宽该要求。

如果您受到影响,我鼓励您对这些请求投赞成票。

© www.soinside.com 2019 - 2024. All rights reserved.