外掛程式搶先體驗版的預覽方法

搶先體驗或不公開預先發布版程式的 API 方法都不公開,也就是說,這類方法不會在標準用戶端程式庫中公開,而且可能無法透過 HTTP 存取。本頁說明如何存取這些預覽方法。

本文件將探討使用預覽 API 的四個選項:

  1. Google 提供的靜態用戶端程式庫。
  2. 動態產生的用戶端程式庫。
  3. 直接 HTTP 要求。
  4. 您自己的自訂用戶端程式庫。

建議使用 Google 提供的靜態或動態程式庫。

靜態資料庫

如果用戶端程式庫使用 Java、Node.js、PHP 和 C# 等語言,則必須從原始碼建構。這些程式庫會在用戶端程式庫下載中提供,且您已採用預覽方法。

您可能需要修改一般依附元件設定,才能使用這些本機程式庫,而不是匯入不含預覽方法的標準用戶端程式庫。

舉例來說,如果您使用的是 Node.js 和 npm,請在 package.json 中新增 Node.js 用戶端程式庫下載 (googleapis-classroom-1.0.4.tgz) 做為本機依附元件:

{
  "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,可用於建構用戶端程式庫、IDE 外掛程式,以及與 Google API 互動的其他工具。一項服務可能會提供多份探索文件。

您可以在下列端點找到 Classroom API 服務 (classroom.googleapis.com) 的探索文件:

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

如要產生 Python 程式庫並使用外掛程式方法例項化 Classroom 服務,您可以使用適當的服務、憑證和標籤指定探索網址:

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 說明文件。

自訂用戶端程式庫

如果您需要建構自己的程式庫,請參閱建構用戶端程式庫。建立自己的程式庫不在本指南的討論範圍內,但建議您參閱動態程式庫一節,瞭解預覽標籤及其在探索功能中的角色。