부가기능 사전 체험판의 미리보기 메서드

사전 체험판 또는 비공개 미리보기 프로그램의 API 메서드는 비공개입니다. 즉, 표준 클라이언트 라이브러리에 노출되지 않으며 기본적으로 HTTP를 통해 액세스하지 못할 수 있습니다. 이 페이지에서는 이러한 미리보기 메서드에 액세스하는 방법을 설명합니다.

이 문서에서는 미리보기 API를 사용하는 네 가지 옵션을 설명합니다.

  1. Google에서 제공하는 정적 클라이언트 라이브러리
  2. 동적으로 생성된 클라이언트 라이브러리
  3. 직접 HTTP 요청
  4. 자체 커스텀 클라이언트 라이브러리

API 사용 시 Google에서 제공하는 정적 라이브러리나 동적으로 생성된 라이브러리를 사용하는 것이 좋습니다.

정적 라이브러리

Java, Node.js, PHP, C# 등의 언어의 클라이언트 라이브러리를 소스에서 빌드해야 합니다. 이러한 라이브러리는 클라이언트 라이브러리 다운로드에서 제공되며, 미리보기 메서드가 이미 포함되어 있습니다.

미리보기 메서드가 없는 표준 클라이언트 라이브러리를 가져오는 대신 이러한 로컬 라이브러리를 사용하도록 일반적인 종속 항목 구성을 수정해야 할 수도 있습니다.

예를 들어 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-addons": "file:./googleapis-classroom-1.0.4.tgz"
  }
}

그런 다음 애플리케이션에서 일반 종속 항목 외에 classroom-with-addons 모듈을 요청하고 이 모듈에서 classroom 서비스를 인스턴스화합니다.

const {authenticate} = require('@google-cloud/local-auth');
const {google} = require('googleapis');
const classroomWithAddons = require('classroom-with-addons');

...

const classroom = classroomWithAddons.classroom({
  version: 'v1',
  auth: auth,
});

...

동적 라이브러리

Python과 같은 언어의 라이브러리는 검색 서비스검색 문서를 사용하여 런타임에 클라이언트 라이브러리를 생성합니다.

검색 문서는 REST API를 설명하고 사용하기 위한 머신에서 읽을 수 있는 사양으로, Google API와 상호작용하는 클라이언트 라이브러리, IDE 플러그인, 기타 도구를 빌드하는 데 사용됩니다. 한 서비스에서 여러 검색 문서를 제공할 수 있습니다.

Classroom API 서비스(classroom.googleapis.com)의 탐색 문서는 다음 엔드포인트에서 찾을 수 있습니다.

  • https://classroom.googleapis.com/$discovery/rest?labels=<PREVIEW_LABEL>&version=v1&key=<API 키>

Python 라이브러리를 생성하고 부가기능 메서드를 사용하여 클래스룸 서비스를 인스턴스화하려면 적절한 서비스, 사용자 인증 정보, 라벨을 사용하여 검색 URL을 지정하면 됩니다.

classroom_service_with_rubrics = googleapiclient.discovery.build(
  serviceName="classroom",
  version="v1",
  credentials=credentials,
  static_discovery=False,
  discoveryServiceUrl=f"https://classroom.googleapis.com/$discovery/rest?labels=ADD_ONS_ALPHA&key=ABCXYZ")

각 언어에 대한 자세한 내용은 개별 Google API 클라이언트 라이브러리 문서를 참조하세요. 미리보기 API 사용 시 중요한 차이점은 적절한 label를 지정하는 것입니다. 이 미리보기에서 해당 라벨은 ADD_ONS_ALPHA입니다.

HTTP 요청

클라이언트 라이브러리 없이 HTTP 요청을 수행하는 경우 라벨(ADD_ONS_ALPHA)을 X-Goog-Visibilities 헤더로 포함해야 합니다.

예를 들어 게시물의 부가기능에서 만든 모든 첨부파일을 보려면 다음 curl 요청을 사용합니다.

curl \
  'https://classroom.googleapis.com/v1/courses/[courseId]/posts/[postId]/addOnAttachments?key=[YOUR_API_KEY]' \
  --header 'X-Goog-Visibilities: ADD_ONS_ALPHA' \
  --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
  --header 'Accept: application/json' \
  --compressed

각 HTTP 요청에 대한 API는 REST 문서에 설명되어 있습니다.

커스텀 클라이언트 라이브러리

자체 라이브러리를 빌드해야 하는 경우 빌드 클라이언트 라이브러리를 참고하세요. 이 가이드에서는 직접 라이브러리를 만드는 과정을 설명하지 않지만 동적 라이브러리 섹션을 검토하여 미리보기 라벨과 검색에서의 역할에 대해 알아봐야 합니다.