This commit is contained in:
liushiwei
2023-09-25 10:13:54 +08:00
parent 2fb3f13787
commit 794ac780ae
11 changed files with 749 additions and 46 deletions

View File

@@ -24,6 +24,72 @@ chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
resolve(res.json());
});
}).then(sendResponse);
} else if (request.type == 'temu') {
new Promise((resolve) => {
let headers = {};
headers['Content-Type'] = 'text/html';
headers.cookie = getTemuCookie();
Promise.resolve().then(() => fetch(request.url, {
'headers': headers,
'method': 'GET',
'referrerPolicy': 'no-referrer',
'credentials': 'include',
'mode': 'cors'
})).then((res) => {
// 创建了一个数据读取器
const reader = res.body.getReader();
// 创建了一个文本解码器
const decoder = new TextDecoder();
let text = ""
reader.read().then(function processText({ done, value }) {
// Result 对象包含了两个属性:
// done - 当 stream 传完所有数据时则变成 true
// value - 数据片段。当 done 为 true 时始终为 undefined
if (done) {
resolve(text);
return;
}
// 将字节流转换为字符
text = text + decoder.decode(value)
// 再次调用这个函数以读取更多数据
return reader.read().then(processText);
});
});
}).then(sendResponse);
} else if (request.type == 'aliexpress') {
new Promise((resolve) => {
let headers = {};
headers['Content-Type'] = 'text/html';
headers.cookie = getAliexpressCookie();
Promise.resolve().then(() => fetch(request.url, {
'headers': headers,
'method': 'GET',
'referrerPolicy': 'no-referrer',
'credentials': 'include',
'mode': 'cors'
})).then((res) => {
// 创建了一个数据读取器
const reader = res.body.getReader();
// 创建了一个文本解码器
const decoder = new TextDecoder();
let text = ""
reader.read().then(function processText({ done, value }) {
// Result 对象包含了两个属性:
// done - 当 stream 传完所有数据时则变成 true
// value - 数据片段。当 done 为 true 时始终为 undefined
if (done) {
resolve(text);
return;
}
// 将字节流转换为字符
text = text + decoder.decode(value)
// 再次调用这个函数以读取更多数据
return reader.read().then(processText);
});
});
}).then(sendResponse);
} else if (request.type == 'notify') {
chrome.notifications.create(
"" + Math.random(), {
@@ -84,3 +150,25 @@ function getCookie() {
});
return cStr;
}
function getTemuCookie() {
const url = new URL("https://www.temu.com/");
let cStr = '';
chrome.cookies.getAll({domain: url.host}, (cookie) => {
cookie.map((c) => {
cStr += c.name + '=' + c.value + ';';
});
});
return cStr;
}
function getAliexpressCookie() {
const url = new URL("https://www.aliexpress.us/");
let cStr = '';
chrome.cookies.getAll({domain: url.host}, (cookie) => {
cookie.map((c) => {
cStr += c.name + '=' + c.value + ';';
});
});
return cStr;
}