mirror of
https://github.com/movie-web/extension.git
synced 2025-09-13 10:23:24 +00:00
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@movie-web/extension",
|
||||
"displayName": "movie-web extension",
|
||||
"version": "1.0.2",
|
||||
"version": "1.0.3",
|
||||
"description": "Enhance your movie-web experience with just one click",
|
||||
"author": "movie-web",
|
||||
"scripts": {
|
||||
|
13
src/background.ts
Normal file
13
src/background.ts
Normal file
@@ -0,0 +1,13 @@
|
||||
import { isChrome } from '~utils/extension';
|
||||
|
||||
// Both brave and firefox for some reason need this extension reload,
|
||||
// If this isn't done, they will never load properly and will fail updateDynamicRules()
|
||||
if (isChrome()) {
|
||||
chrome.runtime.onStartup.addListener(() => {
|
||||
chrome.runtime.reload();
|
||||
});
|
||||
} else {
|
||||
browser.runtime.onStartup.addListener(() => {
|
||||
browser.runtime.reload();
|
||||
});
|
||||
}
|
@@ -49,19 +49,20 @@ const mapBodyToFetchBody = (body: Request['body'], bodyType: Request['bodyType']
|
||||
|
||||
const handler: PlasmoMessaging.MessageHandler<Request, Response<any>> = async (req, res) => {
|
||||
try {
|
||||
const url = makeFullUrl(req.body.url, req.body);
|
||||
await assertDomainWhitelist(req.sender.tab.url);
|
||||
|
||||
if (req.body.headers['User-Agent']) {
|
||||
await setDynamicRules({
|
||||
ruleId: MAKE_REQUEST_DYNAMIC_RULE,
|
||||
targetDomains: [new URL(req.body.url).hostname],
|
||||
targetDomains: [new URL(url).hostname],
|
||||
requestHeaders: {
|
||||
'User-Agent': req.body.headers['User-Agent'],
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
const response = await fetch(makeFullUrl(req.body.url, req.body), {
|
||||
const response = await fetch(url, {
|
||||
method: req.body.method,
|
||||
headers: req.body.headers,
|
||||
body: mapBodyToFetchBody(req.body.body, req.body.bodyType),
|
||||
@@ -80,6 +81,7 @@ const handler: PlasmoMessaging.MessageHandler<Request, Response<any>> = async (r
|
||||
},
|
||||
});
|
||||
} catch (err) {
|
||||
console.error('failed request', err);
|
||||
res.send({
|
||||
success: false,
|
||||
error: err.message,
|
||||
|
Reference in New Issue
Block a user