Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 4352|Odgovoriti: 2

[JavaScript] Ajax-hook za spletni razvoj prestreže vse XMLHttpRequest zahteve

[Kopiraj povezavo]
Objavljeno na 22. 06. 2023 10:29:45 | | | |
Zahteve: Prestreči vse zahteve XMLHttpRequest in ko zadnji vmesnik vrne neveljavno statusno kodo za prijavo, skoči neposredno na prijavni vmesnik in je ne posreduj več. Uporablja se lahko tudi za zahtevo po dodajanju enotnih podpisov, samodejnem reševanju protokolov, statistiki klicev vmesnikov itd.

Pregled:

jQuery prestreže rezultate, ki jih vrne Ajax
https://www.itsvse.com/thread-9570-1-1.html
Čeprav jQuery lahko prestreže Ajax zahteve, je omejen na klicatelja, ki uporablja ajax metode v jQuery, in ne more prestrezati zahtev z nativnim XMLHttpRequest.Ker je ajax zahteva v jQuery tudi enkapsulacija XMLHttpRequest, lahko dejansko prestrežemo XMLHttpRequest

ajax-hook je lahka knjižnica za prestrezanje XMLHttpRequest objektov brskalnika, ki se lahko uporablja za predobdelavo zahtev, odgovorov in napak, preden objekt XMLHttpRequest sproži zahtevo, po prejemu vsebine odgovora in ko pride do napake. Ajax-hook je zelo združljiv in lahko deluje na katerem koli brskalniku, ki podpira ES5, saj ne temelji na funkcijah ES6.

Princip: ajax-hook prilagaja metode in lastnosti v XMLHttpRequest za preglasitev globalnega objekta XMLHttpRequest. Plast proxyja je ovita za objekt XMLHttpRequest.

Odprtokodni naslov:Prijava do hiperpovezave je vidna.

CDN naslov:Prijava do hiperpovezave je vidna.

Proxy proti kljuki

Tako proxy() kot hook() se lahko uporabljata za prestrezanje globalnih XMLHttpRequests. Njihove razlike so:hook() ima fino granularnost prestrezanja, je lahko specifičen za določeno metodo, atribut ali povratni klic objekta XMLHttpRequest, vendar je uporaba bolj zahtevna, saj je pogosto ne le poslovna logika razpršena v različnih povratnih klicih, ampak je tudi nagnjena k napakam. Kerproxy() ima visoko stopnjo abstrakcije, in kontekst zahteva je zgrajen (konfiguracija informacij o zahtevku je dostopna neposredno v vsakem povratnem klicu), kar je enostavnejše in učinkovitejše za uporabo.

Večinoma smoPriporočljivo je uporabiti metodo proxy(), razen če ne ustreza vašim potrebam

Poskusite dodati prestrezanje zahtev jQuery ajax in prestrezanje proxy v ajax-hook, koda je naslednja:

Poskusi poslati zahtevo za pridobitev preko jQuery in jo boš videlOba je mogoče prestreči, kot je prikazano na spodnji sliki:



Pošlji zahtevo z uporabo nativnega XMLHttpRequest, discoverSamo ajax-hook lahko prestreže, kot je prikazano na spodnji sliki:



Več uporab ajax-hook proxyja:

Primer:Prijava do hiperpovezave je vidna.

(Konec)





Prejšnji:EF SQL stavki samodejno generirajo IS NULL ali IS NOT NULL
Naslednji:.NET/C# Izvorna koda HttpClient preprosta analiza
 Najemodajalec| Objavljeno na 22. 06. 2023 10:32:52 |
Intercept fetch() API zahteve in odgovori:https://stackoverflow.com/questi ... onses-in-javascript
 Najemodajalec| Objavljeno na 18. 04. 2024 08:39:18 |
Prestrezanje HTTP odgovora 401 Nepooblaščena prijava za skok:

Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com