בנכס המניפסט "externally_connectable" מצוין אילו תוספים ודפי אינטרנט יכולים
מתחברים לתוסף באמצעות runtime.connect() ו-runtime.sendMessage().
למדריך על העברת הודעות, ראו העברת הודעות בין תוספים ושליחת הודעות מדפי אינטרנט.
התחברות ללא external_connectable
אם לא מוצהר על המפתח externally_connectable במניפסט של התוסף, כל התוספים יכולים להתחבר, אבל אף דף אינטרנט לא יכול להתחבר. כתוצאה מכך, כשמעדכנים את המניפסט לשימוש
externally_connectable, אם לא צוין "ids": ["*"], תוספים אחרים
לא תהיה יותר אפשרות להתחבר לתוסף. תוצאה זו עלולה להיות לא מכוונת, ולכן מומלץ לשמור
או בראשי תיבות.
מניפסט
{
"name": "My externally connectable extension",
"externally_connectable": {
"ids": [
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
...
],
// If this field is not specified, no web pages can connect.
"matches": [
"https://*.google.com/*",
"*://*.chromium.org/*",
...
],
"accepts_tls_channel_id": false
},
...
}
חומרי עזר
מפתח המניפסט "externally_connectable" כולל את המאפיינים האופציונליים הבאים:
"ids"- המזהים של התוספים שמורשים להתחבר. אם השדה יישאר ריק או לא צוין, אי אפשר יהיה לחבר תוספים או אפליקציות. התו הכללי לחיפוש
"*"יאפשר לכל התוספים והאפליקציות להתחבר. "matches"- תבניות כתובות ה-URL של דפי אינטרנט שמורשות להתחבר. אם השדה יישאר ריק או לא צוין, לא ניתן יהיה להתחבר לדפי אינטרנט. התבניות לא יכולות לכלול דומיינים עם תווים כלליים לחיפוש או תת-דומיינים של דומיינים(אפקטיביים) ברמה העליונה, לדוגמה:
| ✅ כתובות URL חוקיות | ❌ כתובות URL לא תקינות |
|---|---|
*://example.com/ |
*://example.com/one/ |
http://*.example.org/* |
<all_urls> |
https://example.com/* |
http://*/* |
"accepts_tls_channel_id"- מאפשרת לתוסף להשתמש במזהה ערוץ ה-TLS של דף האינטרנט שמתחבר אליו. בדף האינטרנט צריך גם לבחור בשליחת מזהה ערוץ ה-TLS לתוסף באמצעות הגדרה
includeTlsChannelIdל-trueבאפשרויות connectInfo של runtime.connect או באפשרויות של runtime.sendMessage. אם המדיניות מוגדרת לערךfalse, השדה runtime.MessageSender.tlsChannelId לא יוגדר אף פעם בשום נסיבות.
היא לא משפיעה על סקריפטים של תוכן.