Latar Belakang
Kadangkala, anda mungkin menghadapi situasi di mana anda perlu menghalang baris Javascript tertentu daripada melaksanakan atau mengubah suai tingkah lakunya dari sisi klien. Ini mungkin mencabar, terutamanya jika anda tidak mempunyai akses kepada kod tapak web.
Mencegah Pelaksanaan dengan Firefox dan Greasemonkey
Firefox menyokong acara "beforescriptexecute", yang membolehkan anda memintas dan menghentikan tag skrip tertentu daripada melaksanakan. Anda boleh menggunakan skrip Greasemonkey untuk mengeksploitasi acara ini dan menghalang pelaksanaan baris kod tertentu. Berikut ialah contoh:
// @name Custom Javascript Interceptor // @include *://example.com/* // @run-at document-start var badFunctionRegex = /some_function_name/; function checkForBadFunctions(event) { // Check if the script contains the bad function if (event.target.textContent.match(badFunctionRegex)) { // Prevent execution event.stopPropagation(); event.preventDefault(); } } // Attach the event listener window.addEventListener('beforescriptexecute', checkForBadFunctions, true);
Mengubah Suai Gelagat Fungsi (tidak mungkin untuk Chrome Tampermonkey)
Firefox juga menawarkan keupayaan untuk menggantikan skrip yang dipintas dengan versi yang diubah suai. Anda boleh menentukan fungsi panggil balik dalam skrip Greasemonkey anda yang menentukan perubahan yang diingini.
Penghadan
Perhatikan bahawa kaedah ini tidak boleh dilakukan untuk Chrome dan Tampermonkey. Untuk penyemak imbas lain, anda mungkin perlu mencipta sambungan penyemak imbas penuh untuk mencapai fungsi ini.
Kesimpulan
Mencegah atau mengubah suai pelaksanaan fungsi Javascript daripada pihak klien boleh dilakukan menggunakan acara "beforescriptexecute" dalam Firefox dan Greasemonkey. Walau bagaimanapun, perlu diingat pengehadan yang berkaitan dengan menggunakan pendekatan ini dalam penyemak imbas yang berbeza.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencegah atau Mengubah Suai Perlaksanaan Fungsi Javascript di Sebelah Pelanggan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!