JS - Memintas XMLHttpRequest dan mencetuskan fungsi
P粉314915922
P粉314915922 2024-04-03 15:33:25
0
1
509

Saya hanya mahu mencetuskan fungsi berdasarkan XMLHttpRequest tertentu yang dihantar. Saya tidak perlu menukar atau menambah apa-apa pada permintaan - hanya mencetuskan fungsi lain dalam pangkalan kod saya. Permintaan dihantar oleh tapak web yang membenamkan kod JS saya. Saya tidak mempunyai kawalan ke atas keseluruhan laman web. Saya mempunyai pemintas untuk berfungsi untuk semua panggilan, tetapi saya tidak cukup tahu mengenainya untuk mengecilkannya berdasarkan keperluan berikut.

Required - If the Request URL contains get-users
Required - If the Status Code: 200 
Optional - If the Request Method: GET

Tidak pasti sama ada saya perlu menggunakan send dan send.call.

(function (send) {
        XMLHttpRequest.prototype.send = function (data) {
          console.log('Request', this);
          // If call url contains "get-users" && status code = 200 && possibly if the request method = get
          // {
          //   MyFunction()
          // }
          send.call(this, data);
        };
      })(XMLHttpRequest.prototype.send);

P粉314915922
P粉314915922

membalas semua(1)
P粉276876663

Anda perlu menambah syarat if untuk menyemak sama ada URL permintaan mengandungi "get-users" dan kod status ialah 200.

Seperti kod di bawah:-

(function (send) {
  XMLHttpRequest.prototype.send = function (data) {
    console.log('Request', this);

    this.onreadystatechange = function () {
      if (this.readyState === 4 && this.status === 200 && this.responseURL.includes('get-users')) {
        MyFunction();
      }
    };

    send.call(this, data);
  };
})(XMLHttpRequest.prototype.send);
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan