externally_connectable

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/* ve https://*.chromium.org/* geçerlidir; <all_urls>, https://*/*, *://*.com/* ve hatta https://*.appspot.com/* geçerli değildir.

  • accepts_tls_channel_id (boole) - isteğe bağlı

    true ise runtime.connect veya runtime.sendMessage üzerinden gönderilen mesajlarda runtime.MessageSender.tlsChannelId, bu yöntemler tarafından isteniyorsa runtime.MessageSender.tlsChannelId olarak ayarlanır. false ise hiçbir zaman runtime.MessageSender.tlsChannelId ayarlanmaz.