ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Mozilla ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° ΠΏΠ»Π°Π½ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² Firefox ΡΡΠ΅ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Chrome, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ΅ΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ ΡΠ΅ΡΡΡΡΡ. Π’ΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° ΡΡΠ°Π»Π° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ ΠΊΡΠΈΡΠΈΠΊΠΈ ΠΈΠ·-Π·Π° Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
Π Firefox Π½Π°ΠΌΠ΅ΡΠ΅Π½Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ°, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΡΠΉ API Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° (declarativeNetRequest), Π½ΠΎ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Chrome Π² Firefox Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°ΡΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠΈΡΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° ΡΠ°Π±ΠΎΡΡ API webRequest, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½ΠΎΠ²ΡΠΉ API Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠ²Π΅ΡΠ°ΡΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ API webRequest. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈ Chrome Π±Π΅Π· Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌΠΈ, Π·Π°Π²ΡΠ·Π°Π½Π½ΡΠΌΠΈ Π½Π° API webRequest.
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ Π½Π΅Π΄ΠΎΠ²ΠΎΠ»ΡΡΡΠ²ΠΎ Π½ΠΎΠ²ΡΠΌ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠΎΠΌ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΎΠΌ Π² ΡΠ΅ΠΆΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ API webRequest, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠ΅Π²ΡΠΌ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΡΠ΅ Π½Π° Π»Π΅ΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΠΈΠΊ. Π£ΠΊΠ°Π·Π°Π½Π½ΡΠΉ API ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² uBlock Origin ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΡ Π΄Π»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΠΌΠ΅ΡΡΠΎ API webRequest ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ ΠΏΠΎ ΡΠ²ΠΎΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ API declarativeNetRequest, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΌΡ Π΄Π²ΠΈΠΆΠΊΡ Π΄Π»Ρ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠ΅ΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ, Π½Π΅ ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ ΠΈ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΌΡ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΏΠ΅ΡΠ΅ΠΊΡΡΠ²Π°ΡΡΠΈΠ΅ Π΄ΡΡΠ³ Π΄ΡΡΠ³Π° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ.
Π Firefox ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ΅ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Chrome ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠ½ΡΠ΅ 2021 Π³ΠΎΠ΄Π°, Π° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΎ Π½Π° Π½Π°ΡΠ°Π»ΠΎ 2022 Π³ΠΎΠ΄Π°. ΠΠ· ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° Π² Firefox Π²ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ:
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ API declarativeNetRequest, Π½ΠΎ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ°ΡΠΎΠ³ΠΎ API webRequest.
- ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Cross-origin Π·Π°ΠΏΡΠΎΡΠΎΠ² — Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π½ΠΎΠ²ΡΠΌ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠΎΠΌ Π½Π° ΡΠΊΡΠΈΠΏΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΡΠ΅ ΠΆΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΠΉ, ΡΡΠΎ ΠΈ Π΄Π»Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΡΠΈ ΡΠΊΡΠΈΠΏΡΡ Π²Π½Π΅Π΄ΡΡΡΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΈΡΠ° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ API ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎ ΠΈ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ ΡΡΠΎΡ Π΄ΠΎΡΡΡΠΏ). Π§Π°ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ Ρross-origin Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΡΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² Π½ΠΎΡΠ½ΡΡ ΡΠ±ΠΎΡΠΊΠ°Ρ Firefox (ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Fission, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² about:preferences#experimental) ΠΈ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½ΠΎΠ³ΠΎ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Π² ΡΡΠ΅ΡΡΠ΅ΠΌ ΠΊΠ²Π°ΡΡΠ°Π»Π΅ 2021 Π³ΠΎΠ΄Π°.
- Π€ΠΎΠ½ΠΎΠ²ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π±ΡΠ΄ΡΡ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ Π½Π° Service workers, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π² ΡΠΎΡΠΌΠ΅ ΡΠΎΠ½ΠΎΠ²ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ². ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ° Π½Π΅ Π³ΠΎΡΠΎΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- API Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Promise. Firefox ΡΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠΉ ΡΠΈΠΏ API Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠΌΡΠ½ «browser.*» ΠΈ Π΄Π»Ρ ΡΡΠ΅ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΡ Π΅Π³ΠΎ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈΠΌΡΠ½ «chrome.*».
- ΠΠΎΠ²Π°Ρ Π³ΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΠΉ — Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΡΠ°Π·Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡ (ΡΠ±ΡΠ°Π½ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΠ΅ «all_urls»), Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π°ΠΊΡΠΈΠ²Π½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Ρ.Π΅. ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°ΡΡ ΡΠ°Π±ΠΎΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Mozilla ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Π΄ ΡΡΠΈΠ»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ°, Π½ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΠΌΠΈΠΌ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ.
- ΠΠ°ΠΏΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°, Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² (ΡΠ΅ΡΡ ΠΏΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°Π΅Ρ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠΉ ΠΊΠΎΠ΄). Π Firefox ΡΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Mozilla Π³ΠΎΡΠΎΠ²Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π·Π°Π³ΡΡΠ·ΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΡΠ΅ Π² ΡΡΠ΅ΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠ°Π½ΠΈΡΠ΅ΡΡΠ°. ΠΠ»Ρ ΡΠΊΡΠΈΠΏΡΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½Π°Ρ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ (CSP, Content Security Policy), Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ API userScripts ΠΈ contentScripts Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ Service worker.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru