提问人:Todd Jones 提问时间:11/11/2023 更新时间:11/11/2023 访问量:12
截获请求的查询字符串参数,存储该值并追加到重定向响应
Intercepting query string parameter for a request, store the value and append to a redirect response
问:
使用 Chrome 扩展程序,我需要拦截请求站点 A 的查询字符串参数,存储该值并将其附加到站点 A 响应的重定向中。Chrome 正在执行原始重定向,而不是新重定向。感谢您的输入!
请看以下内容:
背景:.js
function getFromLocalStorage(key) {
return new Promise((resolve) => {
chrome.storage.local.get([key], (result) => {
resolve(result[key]);
});
});
}
chrome.webRequest.onBeforeRequest.addListener(
async function (details) {
var queryParameter1 = url.searchParams.get('state');
var queryParameter2 = url.searchParams.get('code');
if(queryParameter1!=null) { chrome.storage.local.set({ "interceptedParameter": queryParameter1 });}
if(queryParameter2!= null) {
console.log("queryParameter2: " + queryParameter2);
const interceptedParameter = await getFromLocalStorage("interceptedParameter");
const redirectUrl = "https://example.com/new-redirect-url" + "?interceptedParameter=" + interceptedParameter;
console.log("Modified URL "+ redirectUrl)
return { redirectUrl: redirectUrl };
}
// Continue with the request
return { cancel: false };
},
{ urls: ["<all_urls>"], types: ["main_frame"] },
["blocking"]
);
从原始请求追加查询字符串参数并将其追加到重定向 resposne。
答: 暂无答案
评论