אפליקציות אינטרנט

קל לארגן דפים בעזרת אוספים אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.

אם תיצרו ממשק משתמש עבור סקריפט, תוכלו לפרסם אותו כאפליקציית אינטרנט. לדוגמה, לסקריפט שמאפשר למשתמשים לקבוע פגישות עם חברי צוות תמיכה תוצג בצורה הטובה ביותר בתור אפליקציית אינטרנט, כדי שמשתמשים יוכלו לגשת אליה ישירות מהדפדפנים שלהם.

גם סקריפטים עצמאיים וגם סקריפטים המשויכים ל Google Workspace אפליקציות יכולים להפוך לאפליקציות אינטרנט, כל עוד הם עומדים בדרישות שבהמשך.

דרישות לאפליקציות אינטרנט

ניתן לפרסם סקריפט כאפליקציית אינטרנט אם הוא עומד בדרישות הבאות:

  • היא מכילה פונקציה doGet(e) או doPost(e).
  • הפונקציה מחזירה אובייקט HTML.

פרמטרים של בקשות

כשמשתמש מבקר באפליקציה או בתוכנית שולח לאפליקציה בקשת HTTP מסוג GET, הסקריפט של Apps מפעיל את הפונקציה doGet(e). כשאפליקציה שולחת בקשת HTTP POST, Apps Script מריץ את doPost(e) במקום זאת. בשני המקרים, הארגומנט e מייצג פרמטר של אירוע שיכול להכיל מידע על פרמטרים של בקשות. המבנה של אובייקט האירוע מוצג בטבלה שלמטה:

שדות
e.queryString

הערך של החלק של מחרוזת השאילתה בכתובת ה-URL, או null אם לא צוינה מחרוזת שאילתה

name=alice&n=1&n=2
e.parameter

אובייקט של זוגות של מפתח/ערך שתואמים לפרמטרים של הבקשה. רק הערך שיש לו ערכים מרובים מקבל החזר.

{"name": "alice", "n": "1"}
e.parameters

אובייקט הדומה ל-e.parameter, אך עם מערך ערכים לכל מפתח

{"name": ["alice"], "n": ["1", "2"]}
e.pathInfo

נתיב כתובת ה-URL אחרי /exec או /dev. לדוגמה, אם הנתיב של כתובת ה-URL מסתיים ב-/exec/hello, פרטי הנתיב הם hello.

e.contextPath לא בשימוש, תמיד המחרוזת ריקה.
e.contentLength

אורך גוף הבקשה לבקשות POST או -1 לבקשות GET

332
e.postData.length

זהה לe.contentLength

332
e.postData.type

סוג MIME של גוף ה-POST

text/csv
e.postData.contents

טקסט התוכן של גוף ה-POST

Alice,21
e.postData.name

תמיד הערך "postData"

postData

לדוגמה, אפשר להעביר פרמטרים כמו username ו-age לכתובת URL כפי שמוצג בהמשך:

https://script.google.com/.../exec?username=jsmith&age=21

לאחר מכן אפשר להציג את הפרמטרים האלה:

function doGet(e) {
  var params = JSON.stringify(e);
  return HtmlService.createHtmlOutput(params);
}

בדוגמה שלמעלה, doGet(e) מחזירה את הפלט הבא:

{
  "queryString": "username=jsmith&age=21",
  "parameter": {
    "username": "jsmith",
    "age": "21"
  },
  "contextPath": "",
  "parameters": {
    "username": [
      "jsmith"
    ],
    "age": [
      "21"
    ]
  },
  "contentLength": -1
}

פריסת סקריפט כאפליקציית אינטרנט

כדי לפרוס סקריפט כאפליקציית אינטרנט, צריך לבצע את הפעולות הבאות:

  1. בפינה השמאלית העליונה של פרויקט הסקריפט, לוחצים על פריסה &gt. פריסה חדשה.
  2. לצד "Select type," לוחצים על 'הפעלת סוגי פריסה' > אפליקציית אינטרנט.
  3. מזינים את המידע על אפליקציית האינטרנט בשדות תחת "פריסה תצורה."
  4. לוחצים על פריסה.

אתם יכולים לשתף את כתובת ה-URL של אפליקציית האינטרנט עם מי שתרצו להשתמש בה, בתנאי שנתתם להם גישה.

בדיקת הפריסה של אפליקציית אינטרנט

כדי לבדוק את הסקריפט שלכם כאפליקציית אינטרנט, יש לבצע את הפעולות הבאות:

  1. בפינה השמאלית העליונה של פרויקט הסקריפט, לוחצים על פריסה > בדיקת פריסות.
  2. לצד "Select type," לוחצים על 'הפעלת סוגי פריסה' > אפליקציית אינטרנט.
  3. מתחת לכתובת ה-URL של אפליקציית האינטרנט, לוחצים על העתקה.
  4. מדביקים את כתובת ה-URL בדפדפן ובודקים את אפליקציית האינטרנט.

    כתובת ה-URL הזו מסתיימת ב-/dev, ורק משתמשים עם גישת עריכה לסקריפט יכולים לגשת אליה. במופע הזה של האפליקציה תמיד מופעל הקוד האחרון שנשמר, והוא מיועד לבדיקה רק בזמן הפיתוח.

הרשאות

ההרשאות לאפליקציית אינטרנט משתנות בהתאם לאופן שבו אתם בוחרים להפעיל את האפליקציה:

  • מבצעים את האפליקציה במקומך – במקרה כזה, הסקריפט יפעל תמיד כבעלים של הסקריפט, לא משנה מי ייגש לאפליקציית האינטרנט.
  • מבצעים את האפליקציה כמשתמש בעל הרשאת גישה לאפליקציית האינטרנט – במקרה כזה, הסקריפט פועל כחלק מהזהות של המשתמש הפעיל באמצעות אפליקציית האינטרנט. הרשאת הגישה הזאת גורמת לאפליקציית האינטרנט להציג את האימייל של הבעלים כאשר המשתמש מאשר גישה.

הטמעה של אפליקציית האינטרנט ב-Google Sites

אתם יכולים להטמיע אפליקציות אינטרנט גם בגרסה הקלאסית וגם בגרסה החדשה של Google Sites.

הטמעה של אפליקציית אינטרנט בגרסה החדשה של Google Sites

כדי להטמיע אפליקציית אינטרנט, תחילה יש לפרוס אותה. בנוסף, צריך את כתובת ה-URL שנפרסה בתיבת הדו-שיח Deploy.

כדי להטמיע אפליקציית אינטרנט בדף Google Sites חדש, פועלים לפי השלבים הבאים:

  1. פותחים את דף ה-Google Sites שאליו רוצים להוסיף את אפליקציית האינטרנט.
  2. בוחרים באפשרות הוספה > הטמעת כתובת URL.
  3. מדביקים את כתובת ה-URL של אפליקציית האינטרנט ולוחצים על הוספה.

אפליקציית האינטרנט מופיעה במסגרת בתצוגה המקדימה של הדף. כשאתם מפרסמים את הדף, יכול להיות שצופים באתר יצטרכו לאשר את אפליקציית האינטרנט לפני ההפעלה הרגילה. אפליקציות אינטרנט לא מורשות מציגות למשתמש אישור.

הטמעה של אפליקציית אינטרנט בגרסה הקלאסית של Google Sites

אפשר לחייב סקריפט לאתר שנוצר באמצעות הגרסה הקלאסית של Google Sites בדיוק כמו שאפשר לקשר סקריפט למסמך ב-Google Docs או לגיליון אלקטרוני. כדי ליצור סקריפט קשור, היכנסו לאתר, לחצו על סמל גלגל השיניים הגדרות ולחצו על ניהול אתר. בדף 'ניהול אתר', לוחצים על אפליקציות Apps בסרגל הניווט הימני, ולאחר מכן על הלחצן הוספת סקריפט חדש. פעולה זו תפתח סקריפט חדש בעורך Apps Script, שבו תוכלו לתכנת ולפרוס את אפליקציית האינטרנט.

אתם יכולים גם להטמיע את אפליקציית האינטרנט בדף. תוכלו לקשר את אפליקציית האינטרנט לאתר או להשתמש בכל אפליקציית אינטרנט שיש לכם את כתובת ה-URL שלה. כדי להטמיע אפליקציית אינטרנט בדף Google Sites, פועלים לפי השלבים הבאים:

  1. פותחים אתר קיים שיש לכם גישת עריכה אליו או יוצרים אתר חדש.
  2. עוברים לדף באתר שבו רוצים להטמיע את אפליקציית האינטרנט.
  3. לוחצים על סמל העריכה, ואז מקישים על Insert > Google Apps Script.
  4. בחרו את הסקריפט מהרשימה שמייצג את אפליקציית האינטרנט שלכם. אם אפליקציית האינטרנט לא משויכת לאתר הזה, תוכלו להדביק את כתובת האתר.
  5. לוחצים על הלחצן בחירה, בוחרים את האפשרויות הרצויות בתיבת הדו-שיח הבאה ולוחצים על שמירה.
  6. שמרו את השינויים בדף, ולאחר מכן אפליקציית האינטרנט אמורה להופיע בדף 'אתרים'.

אפליקציות אינטרנט והיסטוריית הדפדפן

מומלץ שאפליקציית אינטרנט של Apps Script תדמית אפליקציה בעלת דפים מרובים, או אפליקציה עם ממשק משתמש דינמי הנשלט על ידי פרמטרים של כתובות URL. כדי לעשות זאת היטב, אפשר להגדיר אובייקט מצב שמייצג את ממשק המשתמש או הדף של האפליקציה. כך, תוכלו לדחוף את המצב להיסטוריית הדפדפן כשהמשתמש מנווט לאפליקציה. תוכלו גם להאזין לאירועי היסטוריה כך שאפליקציית האינטרנט תציג את ממשק המשתמש הנכון כשהמשתמש ינווט הלוך וחזור בעזרת לחצני הדפדפן. הרצת שאילתות לפרמטרים של כתובת ה-URL בזמן הטעינה תאפשר לכם להגדיר לאפליקציה ממשק משתמש דינמי על סמך הפרמטרים האלה. כך המשתמש יוכל להפעיל את האפליקציה במצב מסוים.

Apps Script מספק שני ממשקי API אסינכרוניים מצד הלקוח של JavaScript, שעוזרים ליצור אפליקציות אינטרנט שמקושרות להיסטוריית הדפדפן:

  • google.script.history מספק שיטות שמאפשרות תגובה דינמית לשינויים בהיסטוריית הדפדפן. זה כולל: דחיפת מצבים (אובייקטים פשוטים שאפשר להגדיר) להיסטוריית הדפדפן, החלפה של המצב העליון במקבץ ההיסטוריה והגדרת פונקציית קריאה חוזרת (callback) כדי להגיב לשינויים בהיסטוריה.

  • google.script.url מספק את האמצעים לאחזור הפרמטרים של כתובת ה-URL והקטע של כתובת ה-URL הנוכחית, אם יש כאלה.

ממשקי ה-API של ההיסטוריה זמינים רק לאפליקציות אינטרנט. הן לא נתמכות בסרגלי צד, בתיבות דו-שיח או בתוספים. הפונקציונליות הזו גם לא מומלצת לשימוש באפליקציות אינטרנט שמוטמעות ב-Google Sites.