이 페이지에서는 Classroom API 미리보기 기능에 액세스하는 방법을 설명하고 지정할 수 있습니다
공개 버전과 비교했을 때 미리보기 기능을 사용할 때 고려해야 할 두 가지 사항 v1 API는 다음과 같습니다.
- 사전 체험판 또는 미리보기 프로그램의 API 기능은 HTTP를 통해 기본적으로 액세스하지 못할 수 있습니다.
- 언제든지 여러 API 상태 또는 버전이 있을 수 있고 미리보기입니다.
클라이언트 라이브러리에서 미리보기 기능 사용 설정
Classroom API를 사용하는 일반적인 옵션은 클라이언트 라이브러리를 사용하는 것입니다. 거기 세 가지 유형의 클라이언트 라이브러리입니다.
- 동적으로 생성된 클라이언트 라이브러리
- Google에서 제공하는 정적 클라이언트 라이브러리
- 자체 커스텀 클라이언트 라이브러리
동적으로 생성하거나 Google이 제공하는 정적 라이브러리를 사용하는 것은 권장하는 방법입니다. 필요한 경우 클라이언트 라이브러리 빌드를 참조하세요. 자신만의 라이브러리를 구축할 수 있습니다. 여기서 자체 라이브러리를 만드는 것은 다루지 않습니다. 동적 라이브러리 섹션을 검토하여 미리보기 라벨과 탐색에서 라벨의 역할을 미리 확인합니다.
동적 라이브러리
Python과 같은 언어의 라이브러리는 런타임 시 검색 서비스의 검색 문서
증거 검색 문서는 컴퓨터가 읽을 수 있는 사양으로, REST API를 사용할 수 있습니다 클라이언트 라이브러리, IDE 플러그인, 애플리케이션 개발을 Google API와 상호작용하는 다른 도구들입니다. 하나의 서비스가 여러 개의 문서도 제공합니다
Classroom API 서비스의 문서 검색 (classroom.googleapis.com
)
다음 엔드포인트에서 찾을 수 있습니다.
https://classroom.googleapis.com/$discovery/rest?labels=PREVIEW_LABEL&version=v1&key=API_KEY
미리보기 API로 작업할 때 중요한 차이점은
적절한 label
입니다. 클래스룸 공개 미리보기의 경우
DEVELOPER_PREVIEW
Python 라이브러리를 생성하고 다음을 사용하여 클래스룸 서비스를 인스턴스화합니다. 미리보기 메서드를 사용하여 적절한 서비스를 통해 검색 URL을 지정할 수 있습니다. 사용자 인증 정보, 라벨:
classroom_service_with_preview_features = googleapiclient.discovery.build(
serviceName='classroom',
version='v1',
credentials=credentials,
static_discovery=False,
discoveryServiceUrl='https://classroom.googleapis.com/$discovery/rest?labels=DEVELOPER_PREVIEW&key=API_KEY)'
각 항목에 대한 자세한 내용은 개별 Google API 클라이언트 라이브러리 문서를 참조하세요. 있습니다.
정적 라이브러리
Java, Node.js, PHP, C#, Go와 같은 언어로 클라이언트 라이브러리를 빌드해야 함 가져올 수 있습니다 이 라이브러리는 자동으로 제공되며 미리보기 기능이 있습니다. 이미 통합되었습니다.
공개 미리보기의 경우 클래스룸 클라이언트 라이브러리를 다른 클라이언트 라이브러리와 함께 찾을 수 있습니다. Workspace 개발자 프리뷰 프로그램 클라이언트 라이브러리. 비공개 미리보기의 경우 정적 라이브러리를 생성해야 하는 경우 Google 담당자에게 문의하세요.
이러한 종속 항목을 사용하려면 일반적인 종속 항목 구성을 수정해야 할 수도 있습니다. 로컬 라이브러리를 가져오는 것보다 미리보기 기능이 있습니다.
예를 들어 Go 클라이언트 라이브러리를 사용하려면 replace
지시어를 사용하여 로컬 디렉터리의 모듈을 요구합니다.go.mod
module example.com/app
go 1.21.1
require (
golang.org/x/oauth2 v0.12.0
google.golang.org/api v0.139.0 // Classroom library is in here.
)
require (
...
)
// Use a local copy of the Go client library.
replace google.golang.org/api v0.139.0 => ../google-api-go-client
또 다른 예로, Node.js와 npm을 사용하는 경우 Node.js 클라이언트를 추가합니다.
로컬 종속 항목으로 라이브러리 다운로드 (googleapis-classroom-1.0.4.tgz
)
package.json
:
{
"name": "nodejs-classroom-example",
"version": "1.0.0",
...
"dependencies": {
"@google-cloud/local-auth": "^2.1.0",
"googleapis": "^95.0.0",
"classroom-with-preview-features": "file:./googleapis-classroom-1.0.4.tgz"
}
}
그런 다음 애플리케이션에서 classroom-with-preview-features
모듈을 요구합니다.
일반 종속 항목 외에 classroom
서비스를 인스턴스화합니다.
확인할 수 있습니다
const {authenticate} = require('@google-cloud/local-auth');
const {google} = require('googleapis');
const classroomWithPreviewFeatures = require('classroom-with-preview-features');
...
const classroom = classroomWithPreviewFeatures.classroom({
version: 'v1',
auth: auth,
});
...
미리보기 API 버전 지정
정적 라이브러리와 동적 라이브러리 중 어느 것을 사용하든지 간에 미리보기 기능이 있는 메서드에 API를 호출할 때의 미리보기 버전
사용 가능한 여러 버전과 여기에 포함된 기능이 문서화되어 있습니다. 클래스룸 API 로드맵 메서드 및 필드는 메서드 또는 필드를 사용할 수 있는 버전을 설명합니다.
요청의 PreviewVersion 필드를 설정하여 버전을 지정합니다.
예를 들어 기준표 CRUD 미리보기 API를 사용하여 기준표를 만들려면
CREATE 요청에서 previewVersion
을 V1_20231110_PREVIEW
로 변환합니다.
rubric = service.courses().courseWork().rubrics().create(
courseId=course_id,
courseWorkId=coursework_id,
# Specify the preview version. Rubrics CRUD capabilities are
# supported in V1_20231110_PREVIEW and later.
previewVersion="V1_20231110_PREVIEW",
body=body
).execute()
미리보기 메서드 호출과 연결된 리소스에도
이해를 돕기 위해 통화에서 previewVersion
을(를) 읽기 전용 필드로 사용했습니다.
선택합니다. 예를 들어 이전 CREATE의 응답을 보면
호출에는 V1_20231110_PREVIEW
값이 포함됩니다.
print(json.dumps(rubric, indent=4))
{
"courseId": "123",
"courseWorkId": "456",
"creationTime": "2023-10-23T18:18:29.932Z",
"updateTime": "2023-10-23T18:18:29.932Z",
"id": "789",
"criteria": [...],
# The preview version used in the call that returned this resource.
"previewVersion": "V1_20231110_PREVIEW",
...
}
HTTP 요청
HTTP를 사용하여 Classroom API를 직접 사용할 수도 있습니다.
클라이언트 라이브러리 없이 HTTP 요청을 하는 경우에도
미리보기 버전은 미리보기 버전을 지정합니다 이 작업은 label
X-Goog-Visibilities
헤더 및 앞서 언급한 미리보기 버전을
쿼리 매개변수 또는 POST 본문 필드 (해당 개별 API 참조)
참조 문서 참조). 공개 미리보기의 라벨은 DEVELOPER_PREVIEW
입니다.
예를 들어 다음 curl 요청은 기준표 서비스에 LIST 호출을 실행합니다. 적절한 공개 상태 라벨 및 미리보기 버전으로 바꿉니다.
curl \
'https://classroom.googleapis.com/v1/courses/COURSE_ID/courseWork/COURSE_WORK_ID/rubrics?key=API_KEY&previewVersion=V1_20231110_PREVIEW' \
--header 'X-Goog-Visibilities: DEVELOPER_PREVIEW' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Accept: application/json' \
--compressed
요청 본문에 미리보기 버전을 지정할 수도 있습니다. 예를 들어 POST 요청을 수행합니다.
curl --request PATCH \
'https://classroom.googleapis.com/v1/courses/COURSE_ID/courseWork/COURSE_WORK_ID/rubrics/RUBRIC_ID?updateMask=criteria&key=API_KEY&previewVersion=V1_20231110_PREVIEW' \
--header 'X-Goog-Visibilities: DEVELOPER_PREVIEW' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"criteria":"[...]"}' \
--compressed
각 HTTP 요청에 대한 API는 REST 문서에 설명되어 있습니다.