mirror of
https://github.com/QuiteAFancyEmerald/Holy-Unblocker.git
synced 2025-05-13 03:50:02 -04:00
Added Corrosion Fix for Heroku
Credits: https://github.com/BinBashBanana/Corrosion-Heroku (very epic person)
This commit is contained in:
parent
8d88daf1c2
commit
b0c48df26c
25 changed files with 13 additions and 10 deletions
|
@ -1,45 +0,0 @@
|
|||
function requestHeaders(ctx) {
|
||||
if (ctx.headers.cookie && ctx.rewrite.config.cookie) ctx.headers.cookie = ctx.rewrite.cookies.decode(ctx.headers.cookie, { url: ctx.url, });
|
||||
else delete ctx.headers.cookie;
|
||||
if (ctx.headers.origin) {
|
||||
if (ctx.clientSocket) {
|
||||
const params = new URLSearchParams((ctx.clientRequest.url.split('?')[1] || ''));
|
||||
delete ctx.headers.origin;
|
||||
delete ctx.headers.host;
|
||||
ctx.headers.Origin = params.get('origin') || ctx.url.origin;
|
||||
ctx.headers.Host = ctx.url.host;
|
||||
// Some websocket servers oddly only accept Host and Origin headers if the first character of the header is uppercase.
|
||||
} else {
|
||||
ctx.headers.origin = ctx.url.origin;
|
||||
};
|
||||
};
|
||||
|
||||
if (ctx.headers.referer) {
|
||||
try {
|
||||
ctx.headers.referer = new URL(ctx.rewrite.url.unwrap(ctx.headers.referer, { origin: ctx.origin, })).href;
|
||||
} catch(err) {
|
||||
ctx.headers.referer = ctx.url.href;
|
||||
};
|
||||
};
|
||||
for (let header in ctx.headers) {
|
||||
if (header.startsWith('cf-') || header.startsWith('x-forwarded') || header == 'cdn-loop') delete ctx.headers[header];
|
||||
};
|
||||
ctx.headers.host = ctx.url.host;
|
||||
return true;
|
||||
};
|
||||
|
||||
function responseHeaders(ctx) {
|
||||
if (ctx.headers.location) ctx.headers.location = ctx.rewrite.url.wrap(ctx.headers.location, { base: ctx.url, origin: ctx.origin, });
|
||||
if (ctx.headers['set-cookie']) ctx.headers['set-cookie'] = ctx.rewrite.cookies.encode(ctx.headers['set-cookie'], { domain: ctx.clientRequest.headers.host, url: ctx.url, });
|
||||
[
|
||||
'content-length',
|
||||
'content-security-policy',
|
||||
'content-security-policy-report-only',
|
||||
'strict-transport-security',
|
||||
'x-frame-options'
|
||||
].forEach(name => delete ctx.headers[name]);
|
||||
return true;
|
||||
};
|
||||
|
||||
exports.requestHeaders = requestHeaders;
|
||||
exports.responseHeaders = responseHeaders;
|
Loading…
Add table
Add a link
Reference in a new issue