Wykop X
2024-02-06T01:06:55Z

Wykop XS - XHR Blocker | Wykop X Style znajdziesz na: http://style.wykopx.pl

Wykop XS - XHR Blocker

XHR Blocker pozwala na całkowite zablokowanie żądań, które Wykop próbuje wysłać podczas otwierania strony internetowej.

Wykop XHR Blocker jest jednym ze skryptów projektu "Wykop X"

style CSS Wykop X Style (22,5k pobrań) oraz Wykop X Blank

skrypt Wykop XS (najpopularniejszy skrypt dla Wykopu)

rozszerzenie (wtyczka) do przeglądarki: Wykop X

Funkcja XHR Blocker dostępna jest także jako jedna z kilkudziesięciu funkcji Wykop XS. Jeśli chcesz mieć takie funkcje jak: wyświetlanie informacji o banach, wyświetlanie notatek do użytkowników, ukrywanie wpisów i znalezisk, wklejania obrazków skrótem CTRL+V, statystyki znalezisk, dodatkowe przyciski i kilkadziesiąt innych funkcji - zamiast XHR Blockera zainstaluj skrypt Wykop XS

Informacje o XHR Blocker oraz pozostałych dodatkach Wykop X na GitHubie projektu: https://github.com/wykopx/WykopX/wiki/XHR-Blocker

💲 Zostań patronem projektu Wykop X:
https://buycoffee.to/wykopx

XHR Blocker blokuje requesty XHR (XMLHttpRequest), które podczas wczytywania strony wykop wysyła do:

zewnętrznych serwerów

wykopowego API z reklamami (https://wykop.pl/api/v3/ads)

Po aktywowaniu XHR Blocker wczytywanie Wykopu jest odczuwalnie szybsze - wzrost szybkości ładowania sięgać może nawet do 200-400%
(w zalezności od Twojego komputera, przeglądarki i połączenia internetowego).

Czym są requesty XHR na Wykopie?

Domyślnie Wykop przy każdym otwarciu i odświeżeniu strony próbuje wczytać mniej więcej 30-50 różnego rodzaju skryptów reklamowych oraz trackerów śledzących użytkownika z takich serwererów jak:

a.spolecznosci.net

prebid.smilewanted.com

bidder.adquery.io

hpopenbid.pubmatic.com

prg.smartadserver.com

prebid.eu.creativecdn.com

gpl.adocean.pl

adx.adform.net

delivery.clickonometrics.pl

i.connectad.io

hb.adscale.de

t.visx.net

script.3dex.io

1x1.a-mo.net

ssp.wp.pl

... i wielu innych.

Wysłanie tak dużej liczby zapytań oraz oczekiwanie na wczytanie danych powoduje spowolnienie i często zawieszanie się wczytywanej strony oraz nadmiarowe wykorzystanie pamięci RAM i mocy obliczeniowej CPU.

Skrypty nawet po wczytaniu obciążają przeglądarkę regularnie analizując kliknięcia i zachowania użytkownika, zbierając dane i wysyłając je do kilkudziesięciu, a nawet kilkuset róznych reklamodawców.

Wszystko to skutkuje:

powolnym wczytywaniu kolejnych stron Wykopu

spowolnienie interfejsu przy korzystaniu z przeglądarki (także na innych stronach)

uruchomione wentylatory chłodzące nagrzewający się procesor w Twoim komputerze

nagrzewający się smartfon

szybciej wyczerpywana bateria w smartfonie

przekazywaniem danych o Tobie oraz twojej aktywności osobom trzecim

śledzony jest dosłownie każdy Twój ruch myszką i każde wciśnięcie klawisza

zapisywane i przekazywane mogą być statystyki dotyczące całego pobytu na stronie

Możesz zobaczyć jak działają trackery śledzące użytkowników na przykładzie Microsoft Clarity

Przykład działania XHR Blocker

Przy otwarciu strony głównej Wykop próbuje wysłać około 40-50 żądań do zewnętrznych domen.

Wszystkie te żądania zostają zablokowane przez XHR Blocker i nie zostają wysłane

żadna informacja nie zostaje wysłana do zewnętrznych serwerów o tym, że wszedłeś na Wykop

Twoje dane nie zostają nigdzie przekazane

zablokowanie wysłania żądania powoduje, że przeglądarka nie oczekuje na zewnętrzne skrypty, nie próbuje ich pobrać natomiast od razu dalej wczytuje stronę (np. znaleziska lub wpisy)

oszczędzamy czas ładowania i transfer pobieranych plików

znacząco mniejsze obciążenie procesora oraz pamięci RAM

oszczędzasz baterię na smartfonie

Opis działania

XHR Blocker jako skrypt, który masz zapisany w przeglądarce jest wstrzykiwany na samym początku ładowania strony wykopu - jeszcze przed wczytaniem reklam i skryptów.

Działanie skryptu polega na wykryciu każdego zapytania XHR czyli XMLHttpRequest i zastąpieniu go funkcją wykrywającą czy jest to żądanie do serwera zewnętrznego czy do wykopowego API. Każde zapytanie do API wykopu jest natychmiastowo przekazywane dalej, natomiast pozostałe żądania są blokowane i usuwane.

Przykładowo:
Wykop regularnie, co kilka sekund, sprawdza czy masz nowe powiadomienia, wysyłając żądanie XHR pod adres: https://wykop.pl/api/v3/notifications/status

a także liczbę nowych aktywnych znalezisk w Wykopalisku:
https://wykop.pl/api/v3/links/stats/upcoming
Są to żądania XHR "wewnętrzne" czyli do API wykopu na domenie wykop.pl. Te żądania XHR nie mogą być zablokowane, ponieważ strona całkowicie przestałaby działać.

Wyjątkiem jest blokowanie żądania do wewnętrznego API wykopu obsługującego wyświetlanie reklam: https://wykop.pl/api/v3/ads - XHR Blocker blokuje zapytania pod tym adresem, gdyż nie są one niezbędne do korzystania ze strony (a nawet ich zablokowanie przyspiesza wczytywanie strony i innych elementów)

Jak włączyć XHR Blocker

Aby skorzystać z XHR Blocker możesz zainstalować niniejszy userscript: Wykop XS - XHR Blocker

Jeśli korzystasz z Wykop XS nie instaluj tego skryptu.
Wykop XS od wersji 3.0 ma domyślnie wbudowaną funkcję XHR Blockera.

Konfiguracja XHR Blocker

Domyślnie po zainstalowany *Wykop XS lub Wykop XS - XHR Blocker włączone jest blokowanie zarówno żądań zewnętrznych jak i żądania pod adres https://wykop.pl/api/v3/ads

Niezależnie który z tych dwóch skryptów wybierzesz, możesz skonfigurować działanie funkcji XHR Blocker za pomocą jednego ze stylów:

Wykop X Style lub

Wykop X Blank

Upewnij się wtedy, że włączona jest opcja
"Aktywuj skrypt Wykop XS i działanie włączonych funkcji ❎"

oraz wybrana przez Ciebie opcja w sekcji ❎ XHR Blocker

Logowanie zablokowanych żądań XHR

Jeśli chcesz widzieć co zablokował XHR Blocker możesz włączyć taką funkcję w ustawieniach:

Po włączeniu wejdź na stronę Wykopu i uruchom DevTools np.:

klawiszem F12 lub

skrótem CTRL + SHIFT + J

W konsoli zobaczysz wtedy które żądania zostały zablokowane, a które przepuszczone dalej i pobrane z serwera.

Mirkoczat

Mikroczat