externally_connectable
manifest mülkü, hangi uzantıların, uygulamaların ve web sayfalarının runtime.connect
ve runtime.sendMessage
üzerinden uygulamanıza bağlanabileceğini tanımlar.
Mesaj geçirme hakkında eğitim için uzantılar ve uygulama mesajlaşması ile web sayfalarından mesaj gönderme bölümlerine bakın.
Harici_bağlanabilir olmadan bağlanma
Uygulamanızın manifest dosyasında externally_connectable
beyan edilmemişse tüm uzantılar ve uygulamalar bağlanabilir ancak hiçbir web sayfası bağlanamaz. Bu nedenle, manifestinizi externally_connectable
kullanacak şekilde güncellerken "ids": ["*"]
belirtilmezse diğer uzantılar ve uygulamalar uygulamanıza bağlanma imkanını kaybeder. Bu istenmeyen bir sonuç olabileceğinden bunu aklınızda bulundurun.
Örnek manifest.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
},
...
}
Referans
external_connectable manifest anahtarında aşağıdaki özellikler bulunabilir:
ids
(dize dizisi) - isteğe bağlıBağlanmasına izin verilen uzantıların veya uygulamaların kimlikleri. Boş bırakılır veya belirtilmemişse hiçbir uzantı ya da uygulama bağlanamaz.
"*"
joker karakteri, tüm uzantı ve uygulamaların bağlanmasına izin verir.matches
(dize dizisi) - isteğe bağlıBağlanmasına izin verilen web sayfalarının URL kalıpları. Bu, içerik komut dosyalarını etkilemez. Boş bırakılırsa veya belirtilmezse hiçbir web sayfası bağlanamaz.
Kalıplar, joker karakterli alan adlarını veya (etkili) üst düzey alanların alt alan adlarını içeremez;
*://google.com/*
vehttps://*.chromium.org/*
geçerlidir;<all_urls>
,https://*/*
,*://*.com/*
ve hattahttps://*.appspot.com/*
geçerli değildir.accepts_tls_channel_id
(boole) - isteğe bağlıtrue
iseruntime.connect
veyaruntime.sendMessage
üzerinden gönderilen mesajlardaruntime.MessageSender.tlsChannelId
, bu yöntemler tarafından isteniyorsaruntime.MessageSender.tlsChannelId
olarak ayarlanır.false
ise hiçbir zamanruntime.MessageSender.tlsChannelId
ayarlanmaz.