Jeśli tworzysz interfejs użytkownika dla skryptu, możesz opublikować ten skrypt jako aplikację internetową. Na przykład skrypt, który pozwala użytkownikom planować spotkania z członkami zespołu pomocy, powinien być prezentowany jako aplikacja internetowa, by użytkownicy mogli uzyskiwać do nich dostęp bezpośrednio w przeglądarce.
Zarówno samodzielne skrypty, jak i skrypty powiązane z Google Workspace aplikacjami można zmieniać w aplikacje internetowe, o ile spełniają poniższe wymagania.
Wymagania dotyczące aplikacji internetowych
Skrypt może zostać opublikowany jako aplikacja internetowa, jeśli spełnia te wymagania:
- Zawiera on funkcję
doGet(e)
lubdoPost(e)
. - Ta funkcja zwraca obiekt usługi HTML
HtmlOutput
lub obiekt Usługa 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
, Apps Script uruchamia polecenie doPost(e)
. W obu przypadkach argument e
reprezentuje parametr zdarzenia, który może zawierać informacje o dowolnych parametrach żądań. Struktura obiektu zdarzenia znajduje się w tabeli poniżej:
Pola | |
---|---|
e.queryString |
Wartość ciągu zapytania z adresu URL lub name=alice&n=1&n=2 |
e.parameter |
Obiekt pary klucz/wartość odpowiadający parametrom żądania. W przypadku parametrów, które mają wiele wartości, zwracana 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. |
e.contentLength |
Długość treści żądań POST lub 332 |
e.postData.length |
Taka sama jak w przypadku 332 |
e.postData.type |
Typ MIME treści 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 przekazać takie parametry jak username
i age
do adresu URL, jak pokazano poniżej:
https://script.google.com/.../exec?username=jsmith&age=21
Następnie możesz wyświetlać takie parametry:
function doGet(e) {
var params = JSON.stringify(e);
return HtmlService.createHtmlOutput(params);
}
W przykładzie powyżej doGet(e)
zwraca 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”."
- 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óż > testowanie wdrożeń.
- 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 swoją aplikację internetową.
Ten adres URL kończy się na
/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 służy tylko do testowania podczas programowania.
Uprawnienia
Uprawnienia aplikacji internetowej zależą od wybranego sposobu jej uruchomienia:
- Uruchom aplikację jako ja – w tym przypadku skrypt jest zawsze uruchamiany jako Ty, właściciel skryptu, niezależnie od tego, kto uzyskuje 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 aplikacja internetowa wyświetla adres e-mail właściciela skryptu, gdy użytkownik autoryzuje dostęp.
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ą, należy ją najpierw wdrożyć. Musisz też podać Wdrożony adres URL w oknie Deploy
.
Aby umieścić aplikację internetową na stronie nowej wersji Witryn, wykonaj te czynności:
- Otwórz stronę Witryny, na której chcesz dodać aplikację internetową.
- Wybierz Wstaw > Umieść URL.
- 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 muszą najpierw autoryzować ją. Nieautoryzowane aplikacje internetowe wyświetlają użytkownikowi prośbę o autoryzację.
Umieszczanie aplikacji internetowej w klasycznej wersji Witryn
Możesz powiązać skrypt z klasyczną wersją Witryn Google tak samo jak skrypt z dokumentem lub arkuszem Google. Aby utworzyć powiązany skrypt, otwórz swoją witrynę, kliknij ikonę koła zębatego , a następnie wybierz Zarządzaj witryną. Na stronie zarządzania witryną kliknij Apps Script (Skrypty aplikacji) w panelu nawigacyjnym po lewej stronie, a potem wybierz Dodaj nowy skrypt. Spowoduje to otwarcie nowego skryptu w edytorze Apps Script, w którym możesz kodować i wdrażać aplikację internetową.
Możesz też umieścić aplikację na stronie. Możesz powiązać aplikację internetową z witryną lub użyć dowolnej aplikacji internetowej, której URL dotyczy. 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ą.
- Przejdź na stronę w witrynie, na której chcesz umieścić aplikację internetową.
- Kliknij ikonę edycji, a następnie Wstaw > Google Apps Script.
- Wybierz skrypt z listy odpowiadającej aplikacji internetowej. Jeśli nie jest ona powiązana z tą witryną, możesz wkleić jej adres URL.
- Kliknij przycisk Wybierz, wybierz odpowiednie opcje z następnego okna, a potem kliknij Zapisz.
- Zapisz zmiany na stronie, a aplikacja internetowa powinna być umieszczona na stronie Witryny.
Aplikacje internetowe i historia przeglądarki
Wstrzyknięciem aplikacji internetowej Apps Script może być aplikacja wielostronicowa lub interfejs z dynamicznym interfejsem kontrolowanym przez parametry adresu URL. Aby to zrobić, możesz zdefiniować obiekt w celu reprezentowania interfejsu lub strony aplikacji i przekazywać go 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ę po przyciskach przeglądarki. Twórz zapytania dotyczące parametrów adresu URL w czasie wczytywania, aby umożliwić aplikacji dynamiczne tworzenie interfejsu w oparciu o te parametry, co pozwoli użytkownikowi na uruchomienie aplikacji w określonym stanie.
Apps Script udostępnia 2 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 detektora w celu reagowania na zmiany historii.google.script.url
umożliwia pobranie bieżących parametrów adresu URL i fragmentu adresu URL (jeśli jest dostępny).
Te interfejsy API historii są dostępne tylko dla aplikacji internetowych. Nie są obsługiwane w przypadku pasków bocznych, okien i dodatków. Tej funkcji nie zalecamy też w aplikacjach internetowych umieszczonych w Witrynach Google.