Когда я создаю 6 учебных курсов Google, используя конечную точку https://classroom.googleapis.com/v1/courses, я иногда получаю 409 «Операция была прервана». и 500 ошибок типа «Обнаружена внутренняя ошибка».
Вот мой код в Typescript:
dtos = [
{
uniqueName: 'p:day108.01.1951.catherine', // unique project wide alias
descriptionHeading: '',
name: 'class1'
},
...
];
createCourses(dtos).subscribe(a=> console(a));
createCourses(dtos: CourseCreateDTO[]): Observable<ResultSummary> {
return from(dtos).pipe(
mergeMap(dto => {
return this.classroomService.createCourse(dto);
}),
);
}
createCourse(dto: CourseCreateDTO)
: Observable<GoogleClassroomCourse | StandardError> {
// set up http options
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
Authorization: 'Bearer ' + this.auth.accessToken
}),
body: {
id: dto.uniqueName,
name: dto.name,
ownerId: ADMIN_USERNAME + '@' + DOMAIN_NAME,
courseState: CourseStateEnum.ACTIVE,
}
};
const url = 'https://classroom.googleapis.com/v1/courses';
return this.http.request<GoogleClassroomCourse>('POST', url, httpOptions);
}