تشير سمة البيان externally_connectable
إلى الإضافات والتطبيقات وصفحات الويب التي يمكن استخدامها.
الربط بتطبيقك من خلال runtime.connect
وruntime.sendMessage
.
للاطّلاع على برنامج تعليمي حول تمرير الرسائل، راجِع المراسلة بين الإضافات والتطبيقات وإرسال الرسائل. من صفحات الويب
الاتصال بدون توفّر إمكانية الاتصال الخارجي
إذا لم تتم الإشارة إلى السمة externally_connectable
في بيان تطبيقك، سيصبح بإمكان جميع الإضافات والتطبيقات
ولكن لا يمكن لأي صفحات ويب الاتصال. لذلك، عند تعديل ملف البيان لاستخدام
externally_connectable
، إذا لم يتم تحديد "ids": ["*"]
، ستتغيّر الإضافات والتطبيقات الأخرى
يفقد إمكانية الاتصال بتطبيقك. قد تكون هذه نتيجة غير مقصودة، لذا يجب أخذها في الاعتبار.
نموذج JSON.json
{
"name": "My externally connectable app",
"externally_connectable": {
// Extension and app IDs. If this field is not specified, no
// extensions or apps can connect.
"ids": [
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
...
// Alternatively, to match all extensions and apps, specify only
// "*".
"*"
],
// Match patterns for web pages. Does not affect content scripts.
// If this field is not specified, no webpages can connect.
"matches": [
"https://*.google.com/*",
"*://*.chromium.org/*",
...
],
// Indicates that the extension would like to make use of the TLS
// channel ID of the web page connecting to it. The web page must
// also opt to send the TLS channel ID to the extension via setting
// includeTlsChannelId to true in runtime.connect's connectInfo
// or runtime.sendMessage's options.
"accepts_tls_channel_id": false
},
...
}
مَراجع
يمكن أن يحتوي مفتاح البيان external_connectable على السمات التالية:
ids
(مصفوفة من السلاسل) - اختياريأرقام تعريف الإضافات أو التطبيقات المسموح لها بالاتصال إذا تُركت فارغة أو غير محدّدة، لا يمكن للإضافات أو التطبيقات الاتصال بها.
سيسمح حرف البدل
"*"
لجميع الإضافات والتطبيقات بالاتصال.matches
(مصفوفة من السلاسل) - اختياريأنماط عناوين URL لصفحات الويب المسموح لها بالاتصال. لن يؤثّر ذلك في المحتوى. النصوص البرمجية في حال ترك هذا الحقل فارغًا أو غير محدَّد، لن تتمكّن أي صفحات ويب من الاتصال.
لا يمكن أن تتضمّن الأنماط نطاقات أحرف بدل أو نطاقات فرعية لنطاقات المستوى الأعلى(الفعالة)؛ تُعد
*://google.com/*
وhttps://*.chromium.org/*
صالحة، بينما<all_urls>
وhttps://*/*
*://*.com/*
وحتىhttps://*.appspot.com/*
ليس كذلك.accepts_tls_channel_id
(منطقية) - اختياريفي حال اختيار
true
، سيتم ضبط الرسائل المُرسَلة عبرruntime.connect
أوruntime.sendMessage
.runtime.MessageSender.tlsChannelId
إذا اقتضى الأمر ذلك باستخدام هذه الطرق إذا كانتfalse
، لن يتم أبدًا ضبطruntime.MessageSender.tlsChannelId
تحت أي ظرف من الظروف.