Jeśli tworzysz interfejs skryptu, możesz go opublikować jako aplikacji internetowej. Przykładem może być skrypt, który pozwala użytkownikom planować spotkania z członków zespołu pomocy najlepiej przedstawić jako aplikację internetową, użytkownicy mogą uzyskać do niego dostęp bezpośrednio z przeglądarki.
Skrypty niezależne oraz skrypty powiązane z Google Workspace aplikacjami można przekształcić w aplikacji internetowych, o ile spełniają one poniższe wymagania.
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 usługę HTML.
HtmlOutput
lub Usługa treści ObiektTextOutput
.
Parametry żądania
Gdy użytkownik odwiedza aplikację lub program wysyła do niej żądanie HTTP GET
,
Apps Script uruchamia funkcję doGet(e)
. Gdy program wysyła do aplikacji żądanie HTTP
POST
, Apps Script uruchamia doPost(e)
. W obu przypadkach e
reprezentuje parametr zdarzenia, który może zawierać informacje o dowolnym
parametrów żądania. Struktura obiektu zdarzenia jest widoczna w tabeli
poniżej:
Pola | |
---|---|
e.queryString |
Wartość części adresu URL będącej ciągiem zapytania lub name=alice&n=1&n=2 |
e.parameter |
Obiekt par klucz-wartość odpowiadających parametrom żądania. W przypadku parametrów mających 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. |
e.contentLength |
Długość treści żądania w przypadku żądań POST lub 332 |
e.postData.length |
Taka sama cena jak w usłudze 332 |
e.postData.type |
Typ MIME treści żądania POST text/csv |
e.postData.contents |
Tekst treści POST Alice,21 |
e.postData.name |
Zawsze wartość „postData” postData |
Można na przykład przekazać takie parametry jak username
i age
do adresu URL w następujący sposób:
https://script.google.com/.../exec?username=jsmith&age=21
Następnie możesz wyświetlić następujące parametry:
function doGet(e) {
var params = JSON.stringify(e);
return ContentService.createTextOutput(params).setMimeType(ContentService.MimeType.JSON);
}
W powyższym przykładzie funkcja doGet(e)
zwraca te 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 aplikacji internetowej w polach w sekcji „Wdrożenie”. konfiguracji”.
- Kliknij Wdróż.
Możesz udostępnić URL aplikacji osobom, które mają jej używać. o ile przyznano mu 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óż > Testuj wdrożeniach.
- 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 URL kończy się na
/dev
i tylko użytkownicy z uprawnieniami do edycji mają do niego dostęp do skryptu. Ta instancja aplikacji zawsze uruchamia ostatnio zapisane i jest przeznaczona do testowania tylko w fazie programowania.
Uprawnienia
Uprawnienia aplikacji internetowej różnią się w zależności od wybranego sposobu wykonywania aplikacja:
- Uruchom aplikację jako ja – w tym przypadku skrypt zawsze jest wykonywany. jak Ty, czyli właściciel skryptu, niezależnie od tego, kto korzysta z aplikacji internetowej.
- Uruchom aplikację jako użytkownik uzyskujący dostęp do aplikacji internetowej – w tym przypadku skrypt działa z tożsamością aktywnego użytkownika 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
Aby umieścić aplikację internetową w Witrynach Google, najpierw trzeba
Deployed (wdrożono). Dodatkowo
muszą podać Wdrożony adres URL z okna Deploy
.
Umieszczanie aplikacji internetowej w Witrynach , wykonaj te czynności:
- Otwórz stronę Witryn, do której chcesz dodać aplikację internetową.
- Wybierz Wstaw > Umieść adres URL.
- Wklej adres URL aplikacji internetowej i kliknij DODAJ.
Aplikacja internetowa pojawi się w ramce na podglądzie strony. Po opublikowaniu stronę, być może użytkownicy będą musieli autoryzować aplikację internetową, zanim działa normalnie. Nieautoryzowane aplikacje internetowe wyświetlają prośby o autoryzację użytkownika.
Aplikacje internetowe i historia przeglądarki
Pożądana może być aplikacja internetowa Apps Script symulująca wielostronicowy z aplikacjami lub z interfejsem dynamicznym sterowanym za pomocą parametrów adresu URL. By robić to dobrze, możesz zdefiniować obiekt stanu reprezentujący interfejsu użytkownika lub strony i przekazać stan do historii przeglądarki jako jak użytkownik porusza się po aplikacji. Możesz też nasłuchiwać zdarzeń z historii, gdy użytkownik porusza się po ekranie za pomocą przycisku przyciski przeglądarki. Wysyłanie zapytań o parametry adresu URL podczas wczytywania pozwala dynamicznie tworzy interfejs użytkownika na podstawie tych parametrów, co pozwala użytkownikowi uruchamiania aplikacji w określonym stanie.
Apps Script udostępnia 2 asynchroniczne interfejsy API JavaScript po stronie klienta, podczas tworzenia aplikacji internetowych połączonych z historią przeglądarki:
google.script.history
udostępnia metody dynamicznego reagowania na zmiany w historii przeglądarki. Ten obejmuje: przekazywanie stanów do przeglądarki (proste obiekty, które można zdefiniować) historii, zastępując główny stan stosu historii oraz ustawiając detektor funkcję wywołania zwrotnego do reagowania na zmiany w historii.google.script.url
zapewnia sposób pobrania parametrów adresu URL bieżącej strony i fragmentu adresu URL, jeśli w ich obecności.
Te interfejsy API historii są dostępne tylko dla aplikacji internetowych. Nie obsługiwanych pasków bocznych, okien dialogowych lub dodatków. Ta funkcja jest też niezalecane w aplikacji internetowych umieszczonych w Witrynach Google.