Google Classroom API modifyAttachments

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Google Classroom API modifyAttachments相关的知识,希望对你有一定的参考价值。

在Google Classroom API中执行courses.courseWork.studentSubmissions.modifyAttachments方法时,当我尝试将附件添加到学生的提交时,会返回403错误。

GoogleJsonResponseException:  
{
  "code" : 403,
  "errors" : [ {
    "domain" : "global",
    "message" : "@ProjectPermissionDenied The Developer Console project is not permitted to make this request.",
    "reason" : "forbidden"
  } ],
  "message" : "@ProjectPermissionDenied The Developer Console project is not permitted to make this request.",
  "status" : "PERMISSION_DENIED"
}

呼叫由经过身份验证的学生帐户进行,并作为链接资源添加。 Developer Console项目已启用Google Classroom API,其他对Google Classroom API的调用工作正常,例如courses.listcourses.courseWork.studentSubmissions.get。我错过了什么?在Google Classroom文档站点中使用Try it!应用程序时会返回相同的错误。

答案

修改assignments / courseWork或student提交时,只有创建这些对象的Developer控制台项目才能修改它们。这意味着只有创建相应课程的项目才能修改它们,否则会返回403 PERMISSION_DENIED错误。通过检查Google Classroom课程工作响应中的associatedWithDeveloper属性,您可以轻松确定课程工作项是否与发出请求的Developer Console项目相关联。

另一答案

我花了一段时间来自己解决这个问题,但在我看来,最好的方法是首先使用Google Script或使用Classroom API创建课程作业(即作业或问题)。然后课程与正确的控制台项目相关联,您就可以从中管理提交的内容。

另一答案

如果最终用户不满足访问的先决条件,则所有Classroom API方法都可能返回PERMISSION_DENIED (HTTP 403)错误。错误附带的消息包含一条错误消息,可帮助您确定原因并指示用户采取适当的操作。

ProjectPermissionDenied指示请求尝试修改与其他Developer Console项目关联的资源。

可能的操作:指示您的应用程序无法提出所需的请求。它只能由创建资源的OAuth client ID的Developer Console项目创建。

以上是关于Google Classroom API modifyAttachments的主要内容,如果未能解决你的问题,请参考以下文章

Google Classroom API中的内部错误500

Google API - 删除身份验证范围

谷歌教室api学生名单

如何在 ASP.Net Web 应用程序中使用 MODI?

MODI与VB6

MODIS-MRT(MODIS Reprojection Tool)