Rancangan untuk sokongan Firefox untuk versi 2 dan 3 manifes Chrome

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Mozilla ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ»Π°Π½Π°Ρ…, связанных с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π² Firefox Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсий манифСста Chrome. Компания Google Π² июнС этого Π³ΠΎΠ΄Π° Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π° ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Π²Ρ‚ΠΎΡ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ манифСста, Π² тСстовых выпусках Chrome 127 (Dev, Canary ΠΈ Beta). Π’ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‚ΠΎΡ€ΠΎΠΉ вСрсии манифСста Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° Π½Π΅ Ρ€Π°Π½ΡŒΡˆΠ΅ июля.

Π’ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ компания Mozilla Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π² ΠΎΠ±ΠΎΠ·Ρ€ΠΈΠΌΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ вСрсии манифСста, ΠΈ сохранит Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ дополнСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ возмоТности, нСдоступныС Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста. ΠžΡΡ‚Π°Ρ‘Ρ‚ΡΡ Π² силС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π² Firefox ΠΏΠΎΠ»Π½ΡƒΡŽ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсиСй манифСста Chrome. Π’ Firefox Π±ΡƒΠ΄Π΅Ρ‚ оставлСн ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ API webRequest, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² Chrome Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π² Ρ€Π΅ΠΆΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния.

Π’ Firefox Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Event Pages Π±ΡƒΠ΄Π΅Ρ‚ сохранСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° выполнСния Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… скриптов Π½Π° Π±Π°Π·Π΅ DOM, вмСсто ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста прСдписано ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Service Workers. Π€ΠΎΠ½ΠΎΠ²Ρ‹Π΅ скрипты Π½Π° Π±Π°Π·Π΅ Service Workers Π² Firefox ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ, Π½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° Π±Π°Π·Π΅ Event Pages, Ρ‚Π°ΠΊ ΠΈ скриптов Π½Π° Π±Π°Π·Π΅ Service Workers, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ дополнСния, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² Chrome ΠΈ Firefox.

Manifes Chrome mentakrifkan keupayaan dan sumber yang tersedia untuk sambungan yang ditulis menggunakan API WebExtensions. Bermula dengan versi 57, Firefox beralih sepenuhnya kepada menggunakan API WebExtensions untuk membangunkan alat tambah dan berhenti menyokong teknologi XUL. Peralihan kepada WebExtensions memungkinkan untuk menyatukan pembangunan alat tambah dengan platform Chrome, Opera, Safari dan Edge, memudahkan pengalihan alat tambah antara penyemak imbas web yang berbeza dan memungkinkan untuk menggunakan sepenuhnya mod berbilang proses bagi operasi (tambahan WebExtensions boleh dilaksanakan dalam proses berasingan, diasingkan daripada pelayar yang lain). Untuk menyatukan pembangunan alat tambah dengan penyemak imbas lain, Firefox menyediakan hampir keserasian penuh dengan versi kedua manifes Chrome.

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρ‹ ΠΏΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΡŽ создания бСзопасных ΠΈ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΠΈ ΡƒΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΡŽ возмоТности создания нСбСзопасных ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, компания Google Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ манифСста. ОсновноС Π½Π΅Π΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΎ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсиСй манифСста Π²Ρ‹Π·Π²Π°Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния API webRequest, позволявшСго ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ собствСнныС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ сСтСвым запросам ΠΈ способныС Π½Π° Π»Π΅Ρ‚Ρƒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ. ВмСсто API webRequest Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ своим возмоТностям API declarativeNetRequest, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ доступ ΠΊ встроСнному Π΄Π²ΠΈΠΆΠΊΡƒ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ, Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ собствСнныС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ.

Π‘Ρ€Π΅Π΄ΠΈ особСнностСй Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста Π² Firefox:

  • API penapisan kandungan deklaratif baharu telah ditambahkan, tetapi tidak seperti Chrome, sokongan untuk mod penyekatan lama API webRequest belum dihentikan.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Event Pages, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π΅Π½ для web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΈ устраняСт ограничСния, связанныС с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Service Workers. Event Pages ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ привСсти ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ дополнСния с Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΌΠΈ страницами ΠΊ трСбованиям Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста, сохранив ΠΏΡ€ΠΈ этом доступ ΠΊΠΎ всСм возмоТностям, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DOM.
  • Model permintaan kebenaran berbutir baharu - alat tambah tidak akan dapat diaktifkan untuk semua halaman sekaligus (kebenaran "all_urls" telah dialih keluar), tetapi hanya akan berfungsi dalam konteks tab aktif, i.e. pengguna perlu mengesahkan bahawa alat tambah berfungsi untuk setiap tapak. Dalam Firefox, semua permintaan untuk mengakses data tapak akan dianggap sebagai pilihan, dan keputusan muktamad untuk memberikan akses akan dibuat oleh pengguna, yang akan dapat memutuskan secara selektif mana add-on untuk memberikan akses kepada data mereka pada tapak tertentu.

    Для управлСния полномочиями Π² интСрфСйс Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Β«Unified ExtensionsΒ» для нСпосрСдствСнного управлСния Ρ‚Π΅ΠΌ, ΠΊ ΠΊΠ°ΠΊΠΈΠΌ сайтам ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΎΠ·Π²Π°Ρ‚ΡŒ доступ дополнСния ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ сайту. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ полномочиями примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ дополнСниям Π½Π° основС Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста, для Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ вСрсии манифСста Π³Ρ€Π°Π½ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ доступом ΠΊ сайтам Π½Π΅ производится.

    Rancangan untuk sokongan Firefox untuk versi 2 dan 3 manifes Chrome
  • Perubahan dalam pengendalian permintaan Silang Asal - mengikut manifes baharu, skrip pemprosesan kandungan akan tertakluk kepada sekatan kebenaran yang sama seperti halaman utama yang mana skrip ini dibenamkan (contohnya, jika halaman itu tidak mempunyai akses kepada API lokasi, maka alat tambah skrip juga tidak akan menerima akses ini). Perubahan ini dilaksanakan sepenuhnya dalam Firefox.
  • API Π½Π° основС Promise. Firefox ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹ΠΉ API ΠΈ для Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ вСрсии манифСста.
  • Π—Π°ΠΏΡ€Π΅Ρ‚ выполнСния ΠΊΠΎΠ΄Π°, Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ с Π²Π½Π΅ΡˆΠ½ΠΈΡ… сСрвСров (Ρ€Π΅Ρ‡ΡŒ ΠΏΡ€ΠΎ ситуации, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠΈ выполняСт внСшний ΠΊΠΎΠ΄). Π’ Firefox примСняСтся Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° внСшнСго ΠΊΠΎΠ΄Π° ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Mozilla Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ отслСТивания Π·Π°Π³Ρ€ΡƒΠ·ΠΎΠΊ ΠΊΠΎΠ΄Π°. Для скриптов ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° прСдставлСна ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° ограничСния доступа ΠΊ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Ρƒ (CSP, Content Security Policy).

Sumber: opennet.ru

Tambah komen