4 Commits

Author SHA1 Message Date
William Oldham
5a09e0c602 Merge pull request #26 from movie-web/dev
Version 2.1.3: Push updates to support AWS
2024-01-06 20:54:30 +00:00
mrjvs
8852fca320 Merge branch 'master' into dev 2024-01-06 21:53:48 +01:00
William Oldham
1e147a793d Bump version 2024-01-06 20:52:02 +00:00
William Oldham
e88a4f3203 Bump dep versions and add error handling 2024-01-06 20:51:48 +00:00
4 changed files with 521 additions and 307 deletions

View File

@@ -1,7 +1,7 @@
{ {
"name": "simple-proxy", "name": "simple-proxy",
"private": true, "private": true,
"version": "2.1.2", "version": "2.1.3",
"scripts": { "scripts": {
"prepare": "nitropack prepare", "prepare": "nitropack prepare",
"dev": "nitropack dev", "dev": "nitropack dev",
@@ -15,9 +15,9 @@
"preinstall": "npx only-allow pnpm" "preinstall": "npx only-allow pnpm"
}, },
"dependencies": { "dependencies": {
"h3": "^1.9.0", "h3": "^1.10.0",
"jose": "^5.2.0", "jose": "^5.2.0",
"nitropack": "latest" "nitropack": "^2.8.1"
}, },
"devDependencies": { "devDependencies": {
"@typescript-eslint/eslint-plugin": "^6.7.0", "@typescript-eslint/eslint-plugin": "^6.7.0",

790
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -41,17 +41,22 @@ export default defineEventHandler(async (event) => {
const token = await createTokenIfNeeded(event); const token = await createTokenIfNeeded(event);
// proxy // proxy
await specificProxyRequest(event, destination, { try {
blacklistedHeaders: getBlacklistedHeaders(), await specificProxyRequest(event, destination, {
fetchOptions: { blacklistedHeaders: getBlacklistedHeaders(),
redirect: 'follow', fetchOptions: {
headers: getProxyHeaders(event.headers), redirect: 'follow',
body, headers: getProxyHeaders(event.headers),
}, body,
onResponse(outputEvent, response) { },
const headers = getAfterResponseHeaders(response.headers, response.url); onResponse(outputEvent, response) {
setResponseHeaders(outputEvent, headers); const headers = getAfterResponseHeaders(response.headers, response.url);
if (token) setTokenHeader(event, token); setResponseHeaders(outputEvent, headers);
}, if (token) setTokenHeader(event, token);
}); },
});
} catch (e) {
console.log('Error fetching', e);
throw e;
}
}); });

View File

@@ -20,6 +20,7 @@ const blacklistedHeaders = [
'x-forwarded-proto', 'x-forwarded-proto',
'forwarded', 'forwarded',
'x-real-ip', 'x-real-ip',
'content-length',
...Object.keys(headerMap), ...Object.keys(headerMap),
]; ];