Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 4352|Jawab: 2

[JavaScript] Ajax-hook untuk pengembangan web mencegat semua permintaan XMLHttpRequest

[Salin tautan]
Diposting pada 22/06/2023 10.29.45 | | | |
Persyaratan: Cegat semua permintaan XMLHttpRequest, dan ketika antarmuka backend mengembalikan kode status login tidak valid, langsung ke antarmuka login dan tidak lagi meneruskannya. Ini juga dapat digunakan untuk meminta penambahan tanda tangan terpadu, resolusi protokol otomatis, statistik panggilan antarmuka, dll.

Resensi:

jQuery mencegat hasil yang dikembalikan oleh Ajax
https://www.itsvse.com/thread-9570-1-1.html
Meskipun jQuery dapat mencegat permintaan Ajax, jQuery terbatas pada pemanggil yang menggunakan metode ajax di jQuery dan tidak dapat mencegat permintaan menggunakan XMLHttpRequest asli.Karena permintaan ajax di jQuery juga merupakan enkapsulasi dari XMLHttpRequest, kita benar-benar dapat mencegat XMLHttpRequest

ajax-hook adalah pustaka ringan untuk mencegat objek XMLHttpRequest browser, yang dapat digunakan untuk memproses permintaan, respons, dan kesalahan sebelum objek XMLHttpRequest memulai permintaan, setelah menerima konten respons, dan ketika terjadi kesalahan. Ajax-hook sangat kompatibel dan dapat berjalan di browser apa pun yang mendukung ES5, karena tidak bergantung pada fitur ES6.

Prinsip: ajax-hook menyesuaikan metode dan properti di XMLHttpRequest untuk mengganti objek XMLHttpRequest global. Lapisan proksi dibungkus untuk objek XMLHttpRequest.

Alamat Sumber Terbuka:Login hyperlink terlihat.

Alamat CDN:Login hyperlink terlihat.

proksi vs. kait

Baik proxy() dan hook() dapat digunakan untuk mencegat XMLHttpRequests global. Perbedaannya adalah:hook() memiliki granularitas intersepsi halus, dapat spesifik untuk metode, atribut, atau callback tertentu dari objek XMLHttpRequest, tetapi lebih merepotkan untuk digunakan, dan sering kali, tidak hanya logika bisnis yang perlu tersebar di berbagai callback, tetapi juga rentan terhadap kesalahan. padahalproxy() memiliki tingkat abstraksi yang tinggi, dan konteks permintaan dibangun (konfigurasi informasi permintaan dapat diperoleh langsung di setiap callback), yang lebih sederhana dan lebih efisien untuk digunakan.

Sebagian besar waktu, kamiDisarankan untuk menggunakan metode proxy() kecuali tidak memenuhi kebutuhan Anda

Coba tambahkan intersepsi permintaan ajax jQuery dan intersepsi proxy di ajax-hook, kodenya adalah sebagai berikut:

Coba kirim permintaan get menggunakan jQuery dan Anda dapat melihatnyaKeduanya dapat dicegat, seperti yang ditunjukkan pada gambar di bawah ini:



Mengirim permintaan menggunakan XMLHttpRequest asli, temukanHanya ajax-hook yang dapat mencegat, seperti yang ditunjukkan pada gambar di bawah ini:



Lebih banyak kegunaan ajax-hook proxy:

Contoh:Login hyperlink terlihat.

(Akhir)





Mantan:Pernyataan EF SQL SECARA OTOMATIS menghasilkan IS NULL atau IS NOT NULL
Depan:.NET/C# HttpClient kode sumber analisis sederhana
 Tuan tanah| Diposting pada 22/06/2023 10.32.52 |
Permintaan dan respons API Intercept fetch():https://stackoverflow.com/questi ... onses-in-javascript
 Tuan tanah| Diposting pada 18/04/2024 08.39.18 |
Mencegat respons HTTP 401 Kode login lompat yang tidak sah:

Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com