externally_connectable

Properti manifes "externally_connectable" mendeklarasikan ekstensi dan halaman web mana yang dapat hubungkan ke ekstensi Anda menggunakan runtime.connect() dan runtime.sendMessage().

Untuk tutorial tentang penerusan pesan, lihat pesan lintas ekstensi dan mengirim pesan dari halaman web.

Hubungkan tanpa dapat dihubungkan secara eksternal

Jika kunci externally_connectable tidak dideklarasikan dalam manifes ekstensi Anda, semua ekstensi dapat terhubung, tetapi tidak ada halaman web yang dapat terhubung. Akibatnya, saat mengupdate manifes untuk digunakan externally_connectable, jika "ids": ["*"] tidak ditentukan, ekstensi lain akan kehilangan kemampuan untuk terhubung ke ekstensi Anda. Ini mungkin merupakan konsekuensi yang tidak diinginkan, jadi pastikan bahwa Anda saat ini.

Manifes

{
  "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
  },
  ...
}

Referensi

Kunci manifes "externally_connectable" menyertakan properti opsional berikut:

"ids"
ID ekstensi yang diizinkan untuk terhubung. Jika dibiarkan kosong atau tidak ditentukan, tidak ada ekstensi atau aplikasi yang dapat terhubung. Karakter pengganti "*" akan mengizinkan semua ekstensi dan aplikasi untuk terhubung.
"matches"
Pola URL untuk halaman yang diizinkan untuk terhubung. Jika dibiarkan kosong atau tidak ditentukan, tidak ada halaman web yang dapat terhubung. Pola tidak boleh menyertakan domain karakter pengganti atau subdomain dari domain level teratas(efektif), misalnya:
✅ URL yang valid ❌ URL tidak valid
*://example.com/ *://example.com/one/
http://*.example.org/* <all_urls>
https://example.com/* http://*/*
"accepts_tls_channel_id"
Mengaktifkan ekstensi untuk menggunakan ID saluran TLS dari halaman web yang terhubung ke ekstensi. Halaman web juga harus memilih untuk mengirim ID saluran TLS ke ekstensi dengan menetapkan includeTlsChannelId ke true dalam connectInfo runtime.connect atau options runtime.sendMessage. Jika ditetapkan ke false, runtime.MessageSender.tlsChannelId tidak akan pernah ditetapkan dalam keadaan apa pun.

Hal ini tidak memengaruhi skrip konten.