Zaawansowane usługi w Apps Script umożliwiają doświadczonym programistom nawiązanie kontaktu niektórych publicznych interfejsów API Google o mniejszej konfiguracji niż interfejsy HTTP. Usługi zaawansowane to w zasadzie cienkie otoczenie obejmujące te interfejsy API Google. Ta działają podobnie jak usług wbudowanych – na przykład autouzupełniania, a Apps Script obsługuje proces autoryzacji. Należy jednak włączyć usługę zaawansowaną przed możesz wykorzystać je w skrypcie.
Aby zobaczyć, które interfejsy API Google są dostępne jako usługi zaawansowane, poszukaj sekcji sekcji Zaawansowane usługi Google w Plik referencyjny. Jeśli chcesz użyć interfejsu API Google, który Usługa nie jest dostępna jako usługa zaawansowana, połącz się z nią jak każdą inną zewnętrzny interfejs API.
Usługi zaawansowane czy HTTP?
Każda z zaawansowanych usług Google jest powiązana z publicznym interfejsem API Google.
W Apps Script możesz uzyskać dostęp do tych interfejsów API, korzystając z usług zaawansowanych lub
bezpośrednio wykonując żądania do interfejsu API za pomocą
UrlFetch
Jeśli używasz zaawansowanej metody usługi, Apps Script obsługuje proces autoryzacji i oferty . Musisz jednak włącz usługę zaawansowaną, by móc z niej korzystać . Ponadto niektóre usługi zaawansowane oferują tylko funkcje dostępne w interfejsie API.
Jeśli używasz metody UrlFetch
, aby bezpośrednio uzyskiwać dostęp do interfejsu API,
traktowanie interfejsu API Google jako
zewnętrznego interfejsu API. W przypadku tej metody wszystkie
różne aspekty interfejsu API. Wymaga to jednak obsługi interfejsu API
lub autoryzacją. Musisz także utworzyć potrzebne nagłówki i przeanalizować
w odpowiedziach interfejsu API.
Ogólnie najłatwiej jest korzystać z usługi zaawansowanej tam, gdzie jest to możliwe i tylko
użyj metody UrlFetch
, gdy usługa zaawansowana nie udostępnia
potrzebne funkcje.
Wymagania
Aby korzystać z usługi zaawansowanej, musisz spełnić te wymagania wymagania:
- Musisz włączyć usługę zaawansowaną. w swoim projekcie skryptu.
Musisz się upewnić, że interfejs API odpowiadający usłudze zaawansowanej jest włączony w projekcie Cloud Platform (GCP), których używa skrypt.
Jeśli Twój projekt skryptu używa domyślnego projektu GCP utworzony 8 kwietnia 2019 roku lub później, interfejs API jest włączony automatycznie. po włączeniu usługi zaawansowanej i zapisaniu projektu skryptu. Jeśli do tej pory nie zostało to zrobione, być może prosisz o zaakceptowanie Google Cloud oraz Warunki korzystania z interfejsów API Google.
Jeśli w swoim projekcie skryptu używasz standardowy projekt GCP lub starszy domyślny projekt GCP, musisz włączyć odpowiedni interfejs API usługi zaawansowanej ręcznie w projekcie GCP. Musisz mieć uprawnienia do edycji projektu GCP aby wprowadzić tę zmianę.
Zobacz projekty Cloud Platform. .
Włącz usługi zaawansowane
Aby użyć zaawansowanej usługi Google, wykonaj te czynności:
- Otwórz projekt Apps Script.
- Po lewej stronie kliknij Edytor .
- Po lewej stronie obok opcji Usługi kliknij Dodaj usługę.
- Wybierz zaawansowaną usługę Google i kliknij Dodaj.
Gdy włączysz usługę zaawansowaną, jest ona dostępna w autouzupełnianiu.
Sposób określania podpisów metod
Usługi zaawansowane zwykle używają tych samych obiektów, nazw metod i parametrów jako odpowiednie publiczne interfejsy API, chociaż podpisy metod są tłumaczone dla w Apps Script. Karta edytora skryptów funkcja autouzupełniania zwykle zawiera wystarczającą ilość informacji, aby rozpocząć, ale poniższe reguły wyjaśniają, jak Apps Script generuje podpis metody z publicznego interfejsu API Google.
Żądania do interfejsów API Google mogą przyjmować różne typy danych, łącznie z parametrami ścieżki, zapytaniami, treścią żądania lub multimediami Prześlij załącznik. Niektóre usługi zaawansowane mogą też akceptować określone żądania HTTP. (na przykład Zaawansowana usługa Kalendarza).
Odpowiednie podpisy metody w Google Apps Script mają następujące właściwości argumenty:
- Treść żądania (zwykle zasób) jako obiekt JavaScriptu.
- Ścieżka lub wymagane parametry jako pojedyncze argumenty.
- przesłany plik multimedialny (
Blob
); . - Parametry opcjonalne, jako nazwy parametrów mapowania obiektów JavaScript do .
- nagłówki żądań HTTP jako nazwy nagłówków mapowania obiektów JavaScript na nagłówek; .
Jeśli metoda nie zawiera żadnych produktów w danej kategorii, ta część parametru podpis jest pomijany.
Istnieją pewne wyjątki, o których należy pamiętać:
- W przypadku metod, które akceptują przesyłanie multimediów, ustawiany jest parametr
uploadType
. automatycznie. - Metody o nazwie
delete
w interfejsie API Google mają nazwęremove
w Apps Script. bodelete
to zastrzeżone słowo w JavaScripcie. - Jeśli usługa zaawansowana jest skonfigurowana tak, aby akceptowała nagłówki żądań HTTP, a Ty ustaw obiekt JavaScript z nagłówkami żądań, musisz też ustawić opcjonalny parametry JavaScript (do pustego obiektu, jeśli nie używasz parametrów opcjonalnych).
Pomoc do usług zaawansowanych
Usługi zaawansowane to cienkie elementy, które umożliwiają korzystanie Interfejsy API w Apps Script. W związku z tym wszelkie problemy napotkane podczas ich korzystania są zwykle problem jest związany z bazowym interfejsem API, a nie z samym Apps Script.
Jeśli napotkasz problem podczas korzystania z usługi zaawansowanej, powinna być zgłaszanych przy użyciu instrukcji pomocy dotyczących bazowego interfejsu API. Linki do tych pomocy technicznej są podane w każdym zaawansowanym przewodniku po usłudze w Informacje o Apps Script.