如何拦截并重定向请求?

跨境干货 4年前 (2020) JF007
9,003 0
ElfProxy

作者:Ran

2020-10-15 Ran

以WhatsApp网页版为例,通过拦截并重定向请求可以注入自定义逻辑。

/**

* 请求重定向

*/

chrome.webRequest.onBeforeRequest.addListener(

function (details) {

const matchURL = details.url

const replaceBaseURL = 'http://localhost:3001'

const scriptReg = /https:\/\/web\.whatsapp\.com\/([^.]+)\.?([^.]*)\.js/

const fileName = scriptReg.exec(matchURL)[1]

const fileHash = scriptReg.exec(matchURL)[2]

const replaceURL = `${replaceBaseURL}/whatsapp/override/${fileName}${fileHash ? '.' + fileHash : ''}.js`

console.log(`onBeforeRequest: ${matchURL} → ${replaceURL}`, new Date())

return {

redirectUrl: replaceURL

}

},

{

urls: [

'https://web.whatsapp.com/app.*.js',

'https://web.whatsapp.com/app2.*.js',

],

types: ['script']

},

['blocking']

)

 

 

ElfProxy
版权声明:JF007 发表于 2020年10月28日 下午2:42。
转载请注明:如何拦截并重定向请求? | 007TG全球社交流量导航

相关文章