בנכס המניפסט "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 לא יוגדר אף פעם בשום נסיבות.
היא לא משפיעה על סקריפטים של תוכן.