Jeśli utworzysz interfejs użytkownika dla skryptu, możesz opublikować go jako aplikację internetową. Skrypt, który umożliwia użytkownikom planowanie spotkań z członkami zespołu pomocy, powinien być prezentowany jako aplikacja internetowa, by użytkownicy mogli uzyskiwać do niego dostęp bezpośrednio w przeglądarce.
Zarówno samodzielne skrypty, jak i skrypty powiązane Google Workspace z aplikacjami można zmieniać w aplikacje internetowe, o ile spełniają wymagania opisane poniżej.
Wymagania dotyczące aplikacji internetowych
Skrypt może zostać opublikowany jako aplikacja internetowa, jeśli spełnia te wymagania:
- Zawiera funkcję
doGet(e)
lubdoPost(e)
. - Funkcja zwraca obiekt usługi HTML
HtmlOutput
lub usługę treściTextOutput
.
Parametry żądania
Gdy użytkownik odwiedza aplikację lub program wysyła żądanie HTTP GET
, Apps Script uruchamia funkcję doGet(e)
. Gdy program wysyła do aplikacji żądanie HTTP POST
, zamiast tego Apps Script uruchamia polecenie doPost(e)
. W obu przypadkach argument e
zawiera parametr zdarzenia, który może zawierać informacje o dowolnych parametrach żądania. Struktura obiektu zdarzenia jest widoczna w tabeli poniżej:
Pola | |
---|---|
e.queryString |
Wartość części ciągu zapytania z adresu URL lub name=alice&n=1&n=2 |
e.parameter |
Obiekt par klucz/wartość, które odpowiadają parametrom żądania. W przypadku parametrów, które mają wiele wartości, wyświetlana jest tylko pierwsza wartość. {"name": "alice", "n": "1"} |
e.parameters |
Obiekt podobny do {"name": ["alice"], "n": ["1", "2"]} |
e.pathInfo |
Ścieżka adresu URL po |
e.contextPath |
Nieużywany (zawsze pusty ciąg znaków). |
e.contentLength |
Długość treści żądań POST lub 332 |
e.postData.length |
Taka sama jak 332 |
e.postData.type |
Typ MIME treści żądania POST text/csv |
e.postData.contents |
Tekst treści żądania POST Alice,21 |
e.postData.name |
Zawsze wartość „postData” postData |
Możesz na przykład przekazywać parametry takie jak username
i age
do adresu URL w ten sposób:
https://script.google.com/.../exec?username=jsmith&age=21
Następnie możesz wyświetlać te parametry:
function doGet(e) {
var params = JSON.stringify(e);
return HtmlService.createHtmlOutput(params);
}
W tym przykładzie doGet(e)
zwraca następujące dane wyjściowe:
{
"queryString": "username=jsmith&age=21",
"parameter": {
"username": "jsmith",
"age": "21"
},
"contextPath": "",
"parameters": {
"username": [
"jsmith"
],
"age": [
"21"
]
},
"contentLength": -1
}
Wdrażanie skryptu jako aplikacji internetowej
Aby wdrożyć skrypt jako aplikację internetową, wykonaj te czynności:
- W prawym górnym rogu projektu skryptu kliknij Wdróż > Nowe wdrożenie.
- Obok opcji „Wybierz typ” kliknij Włącz typy wdrożeń > Aplikacja internetowa.
- Wpisz informacje o swojej aplikacji internetowej w polach w sekcji „Konfiguracja wdrożenia”.
- Kliknij Wdróż.
Możesz udostępnić adres URL aplikacji internetowej tym, których chcesz używać, pod warunkiem, że przyznasz im dostęp.
Testowanie wdrożenia aplikacji internetowej
Aby przetestować skrypt jako aplikację internetową, wykonaj te czynności:
- W prawym górnym rogu projektu skryptu kliknij Wdróż > Przetestuj wdrożenia.
- Obok opcji „Wybierz typ” kliknij Włącz typy wdrożeń > Aplikacja internetowa.
- Pod adresem URL aplikacji internetowej kliknij Kopiuj.
Wklej adres URL w przeglądarce i przetestuj aplikację internetową.
Ten adres URL kończy się tekstem
/dev
i jest dostępny tylko dla użytkowników, którzy mają uprawnienia do edycji skryptu. Ta instancja aplikacji zawsze uruchamia ostatnio zapisany kod i jest przeznaczona do testów tylko w fazie programowania.
Uprawnienia
Uprawnienia aplikacji internetowej zależą od wybranego sposobu jej uruchomienia:
- Uruchom aplikację jako ja – w takim przypadku skrypt będzie zawsze wykonywany jako Ty, niezależnie od tego, kto ma dostęp do aplikacji internetowej.
- Uruchom aplikację jako użytkownik uzyskujący dostęp do aplikacji internetowej – w tym przypadku skrypt działa pod tożsamością aktywnego użytkownika korzystającego z aplikacji internetowej. To uprawnienie powoduje, że gdy użytkownik autoryzuje dostęp do aplikacji internetowej, wyświetlany jest adres e-mail właściciela skryptu.
Umieszczanie aplikacji internetowej w Witrynach Google
Możesz też umieszczać aplikacje internetowe w klasycznej i nowej wersji Witryn Google.
Umieszczanie aplikacji internetowej w nowej wersji Witryn
Aby umieścić aplikację internetową, najpierw musisz ją wdrożyć. Musisz też mieć wdrożony adres URL w oknie dialogowym Deploy
.
Aby umieścić aplikację internetową na stronie nowej wersji Witryn, wykonaj te czynności:
- Otwórz stronę Witryny, do której chcesz dodać aplikację internetową.
- Wybierz Wstaw > URL do umieszczenia na stronie.
- Wklej adres URL aplikacji internetowej, a następnie kliknij DODAJ.
Aplikacja internetowa pojawi się w ramce w podglądzie strony. Po opublikowaniu strony użytkownicy witryny mogą potrzebować autoryzacji aplikacji internetowej, zanim zostanie ona normalnie uruchomiona. Nieautoryzowane aplikacje internetowe wyświetlają użytkownikowi żądania autoryzacji.
Umieszczanie aplikacji internetowej w klasycznej wersji Witryn
Możesz powiązać skrypt z klasyczną wersją Witryn Google tak samo jak skrypt z plikiem Dokumentów lub Arkuszy Google. Aby utworzyć powiązany skrypt, wejdź na swoją stronę, kliknij ikonę koła zębatego i wybierz Zarządzaj witryną. Na stronie Zarządzanie witryną kliknij Apps Script (Skrypt aplikacji) w panelu nawigacyjnym po lewej stronie, a następnie przycisk Dodaj nowy skrypt. Spowoduje to otwarcie nowego skryptu w edytorze Apps Script, w którym możesz zakodować i wdrożyć aplikację internetową.
Możesz też umieścić aplikację internetową na stronie. Możesz powiązać aplikację internetową z witryną lub użyć dowolnej aplikacji internetowej, do której URL masz pod ręką. Aby umieścić aplikację internetową na stronie w Witrynach Google, wykonaj te czynności:
- Otwórz istniejącą witrynę, do której masz uprawnienia do edycji, lub utwórz nową witrynę.
- Przejdź na stronę w swojej witrynie, w której chcesz umieścić aplikację internetową.
- Kliknij ikonę edycji, a następnie kliknij Wstaw > Google Apps Script.
- Wybierz z listy skrypt, który reprezentuje Twoją aplikację internetową. Jeśli Twoja aplikacja internetowa nie jest powiązana z tą witryną, możesz wkleić adres URL aplikacji internetowej.
- Kliknij przycisk Wybierz, w oknie dialogowym wybierz odpowiednie opcje, a potem kliknij Zapisz.
- Zapisz zmiany na stronie. Gdy to zrobisz, Twoja aplikacja internetowa powinna być na niej widoczna.
Aplikacje internetowe i historia przeglądarki
Może być pożądane, aby aplikacja internetowa Apps Script symulowała aplikację wielostronicową lub aplikację z dynamicznym interfejsem sterowaną za pomocą parametrów adresu URL. Aby to zrobić, możesz zdefiniować obiekt stanu reprezentujący interfejs lub stronę aplikacji i przekazywać ten stan do historii przeglądania, gdy użytkownik porusza się po aplikacji. Możesz też nasłuchiwać zdarzeń historii, aby aplikacja internetowa wyświetlała prawidłowy interfejs, gdy użytkownik porusza się między przyciskami przeglądarki. Wykonując zapytania o parametry adresu URL podczas wczytywania, możesz skonfigurować aplikację tak, by dynamicznie optymalizowała interfejs użytkownika. Dzięki temu użytkownik będzie mógł uruchomić aplikację w określonym stanie.
Apps Script udostępnia dwa asynchroniczne interfejsy API JavaScript po stronie klienta, które ułatwiają tworzenie aplikacji internetowych połączonych z historią przeglądarki:
google.script.history
udostępnia metody umożliwiające dynamiczne reagowanie na zmiany w historii przeglądarki. Obejmuje to: przekazywanie stanów (proste obiekty, które możesz zdefiniować) do historii przeglądarki, zastępowanie najwyższego stanu w stosie historii oraz ustawianie funkcji wywołania zwrotnego reagowania na zmiany w historii.google.script.url
umożliwia pobranie parametrów adresu URL bieżącej strony i fragmentu adresu URL, jeśli są dostępne.
Te interfejsy API są dostępne tylko w aplikacjach internetowych. Nie są obsługiwane w przypadku pasków bocznych, okien ani dodatków. Tej funkcji nie zalecamy też w aplikacjach internetowych umieszczonych w Witrynach Google.