כותרות של בקשות

מזהה אזור

‫REGION_ID הוא קוד מקוצר ש-Google מקצה על סמך האזור שבוחרים כשיוצרים את האפליקציה. הקוד לא תואם למדינה או למחוז, למרות שחלק ממזהי האזורים עשויים להיראות דומים לקודים נפוצים של מדינות ומחוזות. באפליקציות שנוצרו אחרי פברואר 2020, המחרוזת REGION_ID.r כלולה בכתובות URL של App Engine. באפליקציות קיימות שנוצרו לפני התאריך הזה, מזהה האזור הוא אופציונלי בכתובת ה-URL.

מידע נוסף על מזהי אזורים

בדף ההפניה הזה מפורטות כותרות ה-HTTP הנתמכות. כדי להבין איך App Engine מקבל בקשות ושולח תשובות, אפשר לעיין במאמר איך בקשות מטופלות.

כותרות של בקשות

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

כותרות שהוסרו מבקשות נכנסות

הכותרות הבאות מוסרות מבקשות נכנסות אם לקוח שולח אותן:

  • כותרות עם שמות שתואמים לתבנית X-Google-*. תבנית השם הזו שמורה ל-Google.

  • כותרות עם שמות שתואמים לכותרות ספציפיות ל-App Engine. רק התאמות מדויקות שלא תלויות באותיות רישיות יוסרו. לדוגמה, כותרות בשם X-Appengine-Country או X-AppEngine-Country יוסרו, אבל כותרות בשם X-Appengine-Cntry לא יוסרו.

כותרות ספציפיות ל-App Engine

כדי לספק שירות לאפליקציה, App Engine מוסיף את הכותרות הבאות לכל הבקשות:

X-Appengine-Country
המדינה שממנה הגיעה הבקשה, בתור קוד מדינה ISO 3166-1 alpha-2. מערכת App Engine קובעת את הקוד הזה מכתובת ה-IP של הלקוח. שימו לב: פרטי המדינה לא נלקחים ממסד הנתונים של WHOIS. יכול להיות שלכתובת IP עם פרטי מדינה במסד הנתונים של WHOIS לא יהיו פרטי מדינה בכותרת X-Appengine-Country. האפליקציה צריכה לטפל בקוד המדינה המיוחד ZZ (מדינה לא ידועה).
X-Appengine-Region
שם האזור שממנו הגיעה הבקשה. הערך הזה רלוונטי רק בהקשר של המדינה שצוינה במאפיין X -Appengine-Country. לדוגמה, אם המדינה היא 'US' והאזור הוא 'ca', האזור 'ca' מציין את קליפורניה ולא את קנדה. הרשימה המלאה של ערכי האזור התקפים מופיעה בתקן ISO-3166-2.
X-Appengine-City
שם העיר שממנה נשלחה הבקשה. לדוגמה, בקשה מהעיר מאונטיין ויו יכולה לכלול את ערך הכותרת mountain view. אין רשימה קנונית של ערכים חוקיים לכותרת הזו. אם אי אפשר לפענח את העיר, ערך הכותרת מוגדר כ-?.
X-Appengine-CityLatLong
קו הרוחב וקו האורך של העיר שממנה נשלחה הבקשה. מחרוזת כזו יכולה להיראות כמו '37.386051,-122.083851' עבור בקשה מ-Mountain View. אם אי אפשר לזהות את העיר, ערך הכותרת מוגדר כ-0.000000,0.000000.
X-Cloud-Trace-Context
מזהה ייחודי של הבקשה שמשמש ל-Cloud Trace ול-Cloud Logging. אין אפשרות להשבית את הכותרת הזו או לבחור את קצב הדגימה למעקב, כי המעקב מתבצע באופן אוטומטי בכל האפליקציות בסביבה הרגילה של App Engine.
X-Forwarded-For: CLIENT_IP,GLOBAL_FORWARDING_RULE_IP

רשימה של כתובות IP שמופרדות בפסיקים, שדרכן הבקשה של הלקוח עברה. כשבקשה עוברת דרך מאזן העומסים (LB), מאזן העומסים מוסיף שתי כתובות IP לכותרת X-Forwarded-For בסדר הבא:

  1. כתובת ה-IP של הלקוח שמתחבר למאזן העומסים (CLIENT_IP).
  2. כתובת ה-IP של כלל ההעברה של מאזן העומסים (GLOBAL_FORWARDING_RULE_IP).

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

    X-Forwarded-For: CLIENT_IP,GLOBAL_FORWARDING_RULE_IP

אם בקשה נכנסת כבר כוללת את הכותרת הזו (לדוגמה, אם הלקוח מנותב דרך שרתי proxy אחרים), אפליקציית מאזן העומסים מוסיפה את הכותרת בפורמט הבא:

    X-Forwarded-For: PREVIOUS_ENTRIES,CLIENT_IP,GLOBAL_FORWARDING_RULE_IP

בדוגמה הזו, המשתנים מייצגים את הדברים הבאים:

  • ‫CLIENT_IP: כתובת ה-IP של הלקוח שהתחבר למאזן העומסים.
  • ‫GLOBAL_FORWARDING_RULE_IP: כתובת ה-IP של כלל ההעברה של מאזן העומסים.
  • ‫PREVIOUS_ENTRIES: כל כתובות ה-IP הקודמות שנשלחו על ידי הלקוח או שרתי proxy קודמים.
X-Forwarded-Proto [http | https]

מוצג http או https בהתאם לפרוטוקול שבו הלקוח השתמש כדי להתחבר לאפליקציה.

מאזן העומסים של Google Cloud מפסיק את כל החיבורים של https, ואז מעביר את התנועה למופעים של App Engine דרך http. לדוגמה, אם משתמש מבקש גישה לאתר שלכם דרך https://PROJECT_ID.REGION_ID.r.appspot.com, הערך של הכותרת X-Forwarded-Proto הוא https.

בנוסף, יכול להיות ש-App Engine יגדיר את הכותרות הבאות, שנועדו לשימוש פנימי של App Engine:

  • X-Appengine-Https
  • X-Appengine-User-IP
  • X-Appengine-Api-Ticket
  • X-Appengine-Request-Log-Id
  • X-Appengine-Default-Version-Hostname
  • X-Appengine-Timeout-Ms