首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在谷歌课堂API中发布带有学生副本的课程作业时出现内部错误,可能是bug?

在谷歌课堂API中发布带有学生副本的课程作业时出现内部错误,可能是bug?
EN

Stack Overflow用户
提问于 2019-11-05 08:29:45
回答 3查看 388关注 0票数 2

当我使用课堂API发布作业和学生副本时。我得到了API call to classroom.courses.courseWork failed with error: Internal error encountered

当我成功发布草稿,然后尝试使用API发布作业,或者尝试直接发布新作业时,就会出现这种情况。

将作业更改为“仅查看”解决了这两种情况下的发布问题,但之后您无法获得学生副本,并且在发布后无法再将其更改回来,并且几乎总是需要学生副本。

我可以在没有任何问题的情况下,在谷歌课堂上发布草稿后手动发布。我认为这与你在发布作业后不能制作学生副本的原因有关。

我在发布之前已经探测过了,学生文件夹id是可用的,但还没有创建。

代码语言:javascript
运行
AI代码解释
复制
var assignment =  {
  title: "Test File",    
  materials: [
    {
      driveFile:{
        driveFile: {
          id: "11klBA-80IQPaJHrpSyJHqVsK7BUWWAtoLFdwG0uJGfo", 
          title: "Sample Document"
        },
        shareMode: "STUDENT_COPY"
        }
    }
  ],
  state: "PUBLISH",
  workType: "ASSIGNMENT"
};

var id = Classroom.Courses.CourseWork.create(assignment, 24551294261)
Logger.log(id);

代码语言:javascript
运行
AI代码解释
复制
Classroom.Courses.CourseWork.patch( {"state": "PUBLISHED"},24551294261,46981225150,{updateMask:'state'});

API call to classroom.courses.courseWork.patch failed with error与任一程序代码一起返回。如果将Student_COPY更改为view,则代码可以正常工作。我认为这是一个bug,API没有一些手动点击发布所做的发布协议。所以它失败了。我的猜测是创建google文件夹来存储文档。

我教8个班级,手动发布每个作业需要很长时间,如果我犯了错误,学生可能会错过一个作业。

希望有变通的方法或修复错误的方法。我使用API发布,部分是为了节省评分时间,部分是为了保持所有8个班级相同。我可以更新到期日期或说明,而不会意外地遗漏任何人。我需要API来发布分配,这样它就可以访问分配以进行更改。

EN

回答 3

Stack Overflow用户

发布于 2020-02-19 18:06:14

我找到了一种解决方法。您不能使用API发布带有学生副本的作业。你可以在未来使用scheduledTime: 5分钟,系统会为你发布它。

你可以在5分钟内打补丁来打开它,而不是修补状态来发布现有的分配。我有点痛苦,但发布8个班级的3个作业花了我半个小时。5分钟的等待并不是一笔糟糕的交易。我还没有测试过你可以设置的时间与现在有多接近。我使用5分钟来允许任何延迟。

顺便说一下,补丁只适用于标题,描述,状态,dueDate,dueTime,maxPoints,scheduledTime,submissionModificationMode,topicId。材料不在列表中。您不能更改与工作分配关联的链接或文档。

票数 2
EN

Stack Overflow用户

发布于 2020-06-08 02:00:44

因为我没有足够的名誉点,特拉维斯是对的。

UTC祖鲁时间格式:"scheduledTime":"2020-06-08T01:34:55Z",

要打印时间戳,请使用下面的code...make确保在教室函数中调用下面的函数。

代码语言:javascript
运行
AI代码解释
复制
function schedulePost(){
var now = new Date();
var extra = now.getMinutes()+5;//change the numeric time for the spread
console.log(Utilities.formatDate(now, 'Etc/GMT', 'yyyy-MM-dd\'T\'HH:'+extra+':ss.SSS\'Z\''));
};
票数 0
EN

Stack Overflow用户

发布于 2020-07-17 03:30:48

如果我要将它安排在未来,那么我会在资源中包含:

代码语言:javascript
运行
AI代码解释
复制
resource = {
    ...
    state: "DRAFT";
    ...
    };

要立即发布它,只需将状态设置为已发布:

代码语言:javascript
运行
AI代码解释
复制
resource = {
    ...
    state: "PUBLISHED";
    ...
};

任务就会立即发布。无论哪种方式:

代码语言:javascript
运行
AI代码解释
复制
var creq = gapi.client.classroom.courses.courseWork.create({courseId: 
    smeCourseId,resource: resource});
creq.execute(function(courseWork) {
    if (courseWork.error) {
        window.alert(courseWork.error.message);
    }
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58707261

复制
相关文章
Cypress web自动化21-如何在多个tests之间共享cookies
Cypress 默认每个用例开始之前会清空所有的cookies,保证每个用例的独立性和干净的环境。 但是我们希望在一个js文件下写多个测试用例的时候,希望只调用一次登录, 记住cookies,后面的用例都默认是登录状态,这样测试的效率高一些。 实现cookies共享有2种实现方式
上海-悠悠
2020/05/29
1.9K0
多个Pod之间共享Volume以及详细配置
要在多个Pod之间共享Volume,可以使用Kubernetes的persistentVolumeClaim(PVC)来声明和访问共享的Volume。
一凡sir
2023/09/02
1.4K0
多个Pod之间共享Volume以及详细配置
如何优雅地解决多个 React、Vue 应用之间的状态共享
前言 人生是个积累的过程,你总会有摔倒,即使跌倒了,你也要懂得抓一把沙子在手里。—— 丁磊 码过的每一个需求、踩过的每一个坑、修过的每一个 bug 、学过的每一个知识以及看过的每一篇文章都不会成为无
前端劝退师
2020/12/15
2.1K0
如何优雅地解决多个 React、Vue  应用之间的状态共享
如何在微服务之间共享和同步代码
微服务架构非常适合构建可扩展的代码库,具有更少的耦合,更好的关注点分离,更高的弹性,结合不同的技术,最重要的是,更好的模块化和构建它的组件的可重用性。
February
2018/11/23
2.7K0
如何在WordPress网站之间共享用户和登录
wordpress为网站系统提供了相同的数据表结构,为快速实现多个WordPress网站之间共享用户数据提供了可能。wordpress如何实现如网易通行证等大站一样的共享用户登录呢?只需要将需要共享的数据库共用即可,我们这里只需要共享_user与_usermeta表,下面是完整实现过程。
许都博客
2021/06/15
1.9K0
Vue组件之间的数据共享
组件之间的数据共享 在项目开发中,组件之间的最常见的关系分为如下两种: 父子关系 兄弟关系 父子组件之间的数据共享 父子组件之间的数据共享又分为: 父 -> 子共享数据 子 -> 父共享数据 1. 父组件向子组件共享数据 父组件向子组件共享数据需要使用自定义属性。示例代码如下: 2. 子组件向父组件共享数据 子组件向父组件共享数据使用自定义事件。示例代码如下: 3. 兄弟组件之间的数据共享 在 vue2.x 中,兄弟组件之间数据共享的方案是 EventBus。 EventBus 的使用步骤 创建
777nx
2023/05/02
8010
Vue组件之间的数据共享
如何在多个应用程序中共享日志配置
有的时候你有多个应用程序,它们需要使用相同的日志配置。在这种情况下,你可以将日志配置放在一个共享的位置,然后通过项目文件快速引用。方便快捷,不用重复配置。
newbe36524
2023/08/23
2650
多个git账号之间的切换
做过很多遍了,却总是记不住,这回从头来描述一下。 介绍 所谓多个git账号,可能有两种情况: 我有多个github的账号,不同的账号对应不同的repo,需要push的时候自动区分账号 我有多个git的账号,有的是github的,有的是bitbucket的,有的是单位的gitlab的,不同账号对应不同的repo,需要push的时候自动区分账号 这两种情况的处理方法是一样的,分下面几步走: 处理 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key
happy123.me
2018/06/04
2K0
面试官:sessionStorage可以在多个Tab之间共享数据吗?
英文 | https://fatfish.medium.com/interviewer-can-sessionstorage-share-data-between-multiple-tabs-c30983c61501
五月君
2023/09/06
4880
面试官:sessionStorage可以在多个Tab之间共享数据吗?
多个线程之间的通信问题
在同步代码块中,锁对象是谁,就用那个对象来调用wait和notify 为什么wait方法和notify方法需要定义在Object?       因为所有的对象都是Object的子类对象,而所欲的对象都可以当做锁对象
砖业洋__
2023/05/06
4320
多个线程之间的通信问题
共享主机和 WordPress 主机之间的区别
共享主机:顾名思义,共享主机基本上是一种网络托管,服务提供商提供来自多个网站的网页,并允许这些网站共享连接到互联网的物理服务器。它将网站内容存储在服务器上,并在需要时提供给访问者。
海拥
2022/12/11
5.9K0
在 request 之间共享 SecurityContext
既然 SecurityContext 是存放在 ThreadLocal 中的,而且在每次权限鉴定的时候都是从 ThreadLocal 中获取 SecurityContext 中对应的 Authentication 所拥有的权限,并且不同的 request 是不同的线程,为什么每次都可以从 ThreadLocal 中获取到当前用户对应的 SecurityContext 呢?
johnhuster的分享
2022/03/28
7080
时代智能利器:Zapier —— 简化工作,提高效率!
在当今数字时代,人们面临着越来越多的数字化需求,如何高效连接应用程序和优化工作流程成为一大挑战。Zapier 作为一款强大的在线自动化工具,为用户提供了简单而高效的解决方案。无需编写代码,Zapier可以帮助你轻松连接各种应用程序,并实现自动化工作流程。
程序那些事儿
2023/08/10
8.5K0
时代智能利器:Zapier —— 简化工作,提高效率!
每个前端开发者都应知道的14个实用网站
在本文中,我将分享一些非常有用的网站合集,这些网站可以在你的日常工作中极大地帮助你。这些网站已经成为我各种任务的首选资源,节省了我的时间,提高了工作效率
前端小智@大迁世界
2023/08/16
1.2K0
每个前端开发者都应知道的14个实用网站
每个前端开发者都应知道的10个实用网站
Documatic 是一个高效的搜索引擎工具,旨在帮助开发人员轻松搜索他们的代码库,找到特定的代码片段、函数、方法和其他相关信息。该工具旨在通过在几秒钟内快速提供准确和相关的搜索结果,节省开发人员宝贵的时间,提高他们的生产力。
前端小智@大迁世界
2023/08/16
4480
每个前端开发者都应知道的10个实用网站
【JavaSE专栏78】线程同步,控制多个线程之间的访问顺序和共享资源的安全性
本文讲解了 Java 中线程同步的语法和应用场景,并给出了样例代码。线程同步是一种机制,用于控制多个线程之间的访问顺序和共享资源的安全性。当多个线程并发地访问共享资源时,如果没有适当的同步机制,可能会导致数据不一致或出现竞态条件等问题。
Designer 小郑
2023/08/17
2830
【JavaSE专栏78】线程同步,控制多个线程之间的访问顺序和共享资源的安全性
SFTPServer如何共享多个目录
在使用知行之桥EDI系统的时候,有些客户作为SFTPServer端进行SFTP连接的时候,希望能够将文件按照不同的业务类型进行区分,并将区分好的文件放入不同的文件夹中,然后将这些文件夹共享给合作伙伴。
知行软件EDI
2023/02/03
1.1K0
基于CPU和RabbitMQ进行自动伸缩
最终用户客座文章作者:Ratnadeep Debnath,Zapier 网站可靠性工程师
CNCF
2022/03/27
1.3K0
基于CPU和RabbitMQ进行自动伸缩
【转载】如何在CentOS 7服务器之间使用NFS共享目录
NFS 即 (Network File System) 的缩写,最大的功能就是可以通过网络,让不同的机器、不同的操作系统实现共享彼此的文件。
兜兜转转
2023/03/08
2.3K0
如何在博客的日志之间显示广告
这篇文章将向你展示如何在 WordPress 主页上的日志之间放置 AdSense 代码(或者其他广告的代码)。同样的方法也可以用于在存档页面(包括分类和作者存档页面)放置广告。
Denis
2023/04/13
5740

相似问题

带番石榴EventBus的条件订阅

20

Eventbus事件订阅者

27

与番石榴eventBus订阅者一起使用Spring事务处理

12

芭乐eventbus有订阅者吗?

10

Vertx : eventBus订阅者被取消订阅的原因

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文