Cum să interceptați un apel de funcții în javascript

Cât de ușor să faci o depanare convenabilă și să nu urci în cod sau cum hackerii cu barbă interceptează ajax-cererile. încălcându-vă siguranța.

Ascultător al unei metode de apel la un obiect

Să presupunem că avem un obiect de aplicație. Are o metodă numită doStaf () și trebuie să știm ce se întâmplă la intrarea sa.







Pentru aceasta trebuie executat următorul cod:

Acest cod folosind o funcție anonimă are prioritate față de funcția app.doStaf (), în care desfășurăm manipularea necesară a argumentelor, iar apoi apel fostul app.doStaf (). păstrate în închidere.

Apoi, pentru confort, împachetați tot acest cod în funcție:

Fiți atenți la ordinea argumentelor: prima linie de transport, numele metodei sau funcția pe care doriți să ascultați (intercepta), al doilea - callback, care este necesară pentru a efectua un apel de funcție sau o metodă, și numai a treia entitate de transmisie, metoda pe care doriți să intercepteze. Acest lucru se face, deoarece al treilea parametru nu este obligatoriu și dacă nu este, metoda va fi luată din obiectul ferestrei.







Această funcție poate intercepta apelul de numai obiecte sau funcții declarate la nivel global.

De asemenea, apelul de apel invers este înfășurat într-o încercare. Acest lucru este necesar pentru a nu întrerupe executarea funcției în cazul în care există erori în codul dvs.

Interceptul ajax-request

La sfârșit, utilizând funcția descrisă mai sus, interceptăm apelul oricărei solicitări ajax prin suspendarea ascultătorului metodei send () pe obiectul xmlHttpRequest:

Acum, având abilitățile necesare, puteți intercepta ambele apeluri la console.log (). și, de exemplu. cereri în cadrul sistemului de plăți.

Cum să interceptați un apel de funcții în javascript

materiale pe această temă







Trimiteți-le prietenilor: