יצירת רשימת דוחות

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

התחביר של רשימת הדוחות

אפשר לעיין בתחביר של רשימת הדוחות.

מיקום רשימת ההצהרות

רשימת הדוחות מתארחת במיקום ידוע שתלוי בסוג המפתח (האתר או האפליקציה שמצהירים על כך).

רשימת דוחות של אתרים

באתר, רשימת דוחות היא קובץ טקסט שממוקם בכתובת הבאה:

scheme://domain/.well-known/assetlinks.json

שימו לב לנקודה שמופיע בשם התיקייה .well-known.

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

דוגמה

לפניכם דוגמה לדף חשבון באתר: http://example.digitalassetlinks.org/.well-known/assetlinks.json

רשימות של דוחות על אפליקציות ל-Android

באפליקציה ל-Android, רשימת הדוחות היא קטע קוד ב-JSON עם תחביר זהה לזה של קובץ הצהרת אתר, אבל היא מוטמעת בקובץ string.xml, ויש אזכור שלה במניפסט כפי שמוצג בהמשך.

ב-AndroidManifest.xml:

<manifest>
  <application>
    ...
    <meta-data android:name="asset_statements" android:resource="@string/asset_statements" />
    ...
  </application>
</manifest>

ב-res/values/strings.xml:

<resources>
  ...
  <string name="asset_statements">
    ... statement list ...
  </string>
</resources>

דוגמה

הנה דוגמה לקטע טקסט של res/values/strings.xml עבור אפליקציה ל-Android שתומכת בשיתוף מיקום עם האפליקציה (התכונה ב-Android לא נתמכת כרגע):

<resources>
    ...
    <string name="asset_statements">
      [{
        \"relation\": [\"delegate_permission/common.share_location\"],
        \"target\": {
          \"namespace\": \"web\",
          \"site\": \"https://example.com\"
        }
      }]
    </string>
</resources>

התאמה ליעד

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

טירגוטים לאתרים

באתר, סכימת האתר, המארח והיציאה חייבים להיות זהים. יציאות ברירת המחדל עבור HTTP ו-HTTPS (80 ו-443 בהתאמה) נחשבות באופן לא מפורש; אם יעד הצהרה מתאר את http://www.example.com:80, אז האתר http://www.example.com נחשב כהתאמה.

דוגמה

בהינתן יעד ההצהרה הבא

"target": {
  "namespace": "web",
  "site": "https://www.google.com"
}

כתובות ה-URI הבאות תואמות:

  • https://www.google.com/
  • https://www.google.com:443/
  • https://www.google.com/foo
  • https://www.google.com/foo?bar
  • https://www.google.com/foo#bar
  • https://user@password:www.google.co.il/

כתובות ה-URL הבאות לא יתאימו:

  • http://www.google.com/ (סכמה שגויה)
  • https://google.com/ (שם המארח לא תואם)
  • https://www.google.com:444/ (היציאה לא תואמת)

יעדי אפליקציות

עבור אפליקציה, הגיבוב והשם של האישור של היעד חייבים להיות זהים לאפליקציה.