Metody API w programach wcześniejszego dostępu lub prywatnej wersji przedpremierowej są prywatne, co oznacza, że nie są one widoczne w standardowych bibliotekach klienta i mogą nie zostać domyślnie dostępne przez HTTP. Na tej stronie dowiesz się, jak uzyskać dostęp do tych funkcji podglądu.
W tym dokumencie omówiono 4 możliwości korzystania z interfejsu API w wersji testowej:
- Udostępnione przez Google statyczne biblioteki klienta.
- Dynamicznie generowane biblioteki klienta.
- Bezpośrednie żądania HTTP.
- Twoja własna biblioteka klienta.
Dostarczane przez Google biblioteki statyczne lub generowane dynamicznie zalecanym sposobem korzystania z interfejsu API.
Biblioteki statyczne
Biblioteki klienta w językach takich jak Java, Node.js, PHP i C# muszą być tworzone na podstawie źródła. Te biblioteki znajdziesz w bibliotekach klienta do pobrania. i mają już metody podglądu.
Aby z nich korzystać, może być konieczne zmodyfikowanie typowej konfiguracji zależności bibliotek lokalnych zamiast importowania standardowych bibliotek klienta, które tego nie robią i udostępniać metody podglądu.
Jeśli na przykład używasz Node.js i npm, dodaj bibliotekę klienta Node.js
pobierz (googleapis-classroom-1.0.4.tgz
) jako zależność lokalną w
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"
}
}
W aplikacji musisz dodatkowo dodać moduł classroom-with-addons
do zwykłych zależności i utwórz instancję usługi classroom
część:
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,
});
...
Biblioteki dynamiczne
Biblioteki w językach takich jak Python generują bibliotekę klienta w czasie działania za pomocą dokument wykrywania z usługi wykrywania.
Dokument Discovery to czytelna dla komputera specyfikacja służąca do korzystające z interfejsów API typu REST. służy do tworzenia bibliotek klienta, wtyczek IDE inne narzędzia współpracujące z interfejsami API Google. Jedna usługa może obejmować wiele dokumenty wykrywania.
Dokumenty Discovery dla usługi interfejsu API Classroom
(classroom.googleapis.com
) znajdziesz w tym punkcie końcowym:
- https://classroom.googleapis.com/$discovery/rest?labels=<PREVIEW_LABEL>&version=v1&key=<PREVIEW_LABEL>
Aby wygenerować bibliotekę Pythona i utworzyć instancję usługi Classroom za pomocą możesz określić adres URL Discovery za pomocą odpowiedniej usługi, dane logowania i etykietę:
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")
Szczegółowe informacje o poszczególnych interfejsach API znajdziesz w dokumentacji biblioteki klienta dotyczącej poszczególnych interfejsów API Google.
język. Ważną różnicą przy pracy z interfejsami API w wersji testowej jest określenie
odpowiedni label
. W tym podglądzie ta etykieta to ADD_ONS_ALPHA
.
Żądania HTTP
Jeśli wysyłasz żądania HTTP bez biblioteki klienta, pamiętaj o dodaniu etykiety
(ADD_ONS_ALPHA
) jako nagłówek X-Goog-Visibilities
.
Aby na przykład wyświetlić wszystkie załączniki utworzone przez dodatek pod postem, użyj rozszerzenia to żądanie curl:
curl \
'https://classroom.googleapis.com/v1/courses/[courseId]/courseWork/[itemId]/addOnAttachments?key=[YOUR_API_KEY]' \
--header 'X-Goog-Visibilities: ADD_ONS_ALPHA' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
Interfejs API każdego żądania HTTP został opisany w dokumentacji REST.
Niestandardowe biblioteki klienta
Jeśli chcesz utworzyć własną bibliotekę, przeczytaj artykuł o tworzeniu bibliotek klienta. Tworzę nie wykracza poza zakres tego przewodnika, ale zapoznaj się z biblioteki dynamiczne, aby dowiedzieć się więcej o etykietach podglądu i ich roli Odkrywanie treści.