מאפיין המניפסט "externally_connectable"
מצהיר אילו תוספים ודפי אינטרנט יכולים לקשר לתוסף באמצעות runtime.connect()
ו-runtime.sendMessage()
.
לקבלת הדרכה על העברת הודעות, ראו העברת הודעות בין תוספים ושליחת הודעות מדפי אינטרנט.
התחברות ללא חיבור חיצוני
אם המפתח 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 אף פעם לא יוגדר בשום מקרה.
אין לכך השפעה על סקריפטים של תוכן.