Mengatasi X-Frame-Options DENY dengan Chrome Extension's webRequest API
Dalam konteks membangunkan sambungan Chrome, pembangun sering menghadapi cabaran apabila tapak web laksanakan pengepala X-Frame-Options untuk menghalang kandungannya daripada dibenamkan dalam iframe. Sekatan ini menimbulkan halangan untuk sambungan seperti Intab, yang bertujuan membenarkan pengguna melihat pautan dalam talian.
Nasib baik, terdapat penyelesaian yang memanfaatkan API webRequest Chrome. API ini menyediakan akses kepada permintaan HTTP yang dipintas, termasuk pengepala dan data tindak balas. Dengan memintas permintaan ini, kami boleh memanipulasi pengepala X-Frame-Options untuk membenarkan sebaris.
Berikut ialah cara untuk melaksanakan penyelesaian ini dalam sambungan Chrome anda:
Ubah suai Pengepala menggunakan API webRequest onHeadersReceived pendengar:
chrome.webRequest.onHeadersReceived.addListener( (info) => { // Remove the X-Frame-Options header for (let i = info.responseHeaders.length - 1; i >= 0; i--) { const header = info.responseHeaders[i].name.toLowerCase(); if (header === 'x-frame-options' || header === 'frame-options') { info.responseHeaders.splice(i, 1); } } return {responseHeaders: info.responseHeaders}; }, { urls: [ '*://*/*', // Pattern for all HTTP(S) pages ], types: ['sub_frame'], }, ['blocking', 'responseHeaders'] );
Isytihar Kebenaran dalam Fail Manifes:
<permissions> <permission>webRequest</permission> <permission>webRequestBlocking</permission> </permissions>
Dengan menggunakan teknik ini, sambungan Chrome boleh memintas sekatan X-Frame-Options DENY dan memberikan pengguna pengalaman tontonan sebaris yang lancar untuk tapak web yang sebelum ini tidak dibenarkan ia.
Atas ialah kandungan terperinci Bagaimanakah Pelanjutan Chrome Boleh Memintas X-Frame-Options MENOLAK Sekatan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!