File size: 1,784 Bytes
fd4e061 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
console.log('Debug init started');
const express = require('express');
const { createProxyMiddleware } = require('http-proxy-middleware');
// Create Express Server
const app = express();
function GetEnv(name)
{
const value = process.env[name];
if (value === undefined) {
return 'bad_value';
}
return value;
}
// Configuration
const PORT = 7860;
const API_SERVICE_URL = GetEnv('SECRET_PROXYSITE_URL');
const NKEY = GetEnv('SECRET_PROXY_KEY');
// Info GET endpoint
app.get('/info', (req, res, next) => {
res.send('This is a proxy service which proxies to Billing and Account APIs.');
});
// Info GET endpoint
app.get('/sink/v1/chat/completions', (req, res, next) => {
res.send('Sink test.');
console.log(req);
});
function rewriteRequest(proxyReq, req, res)
{
proxyReq.setHeader("origin", "");
proxyReq.setHeader("referer", "");
proxyReq.setHeader('x-forwarded-for', '');
proxyReq.setHeader('x-forwarded-proto', '');
proxyReq.setHeader('x-forwarded-port', '');
proxyReq.setHeader('x-amzn-trace-id', '');
proxyReq.setHeader('x-request-id', '');
//console.log(req);
}
// Proxy endpoints
app.use(`/${NKEY}`, createProxyMiddleware({
target: API_SERVICE_URL,
on: {
proxyReq: rewriteRequest
},
changeOrigin: true,
pathRewrite: {
[`^/${NKEY}`]: '',
},
}));
// Proxy endpoints
app.use(`/redirect_test/`, createProxyMiddleware({
target: "https://iamthebadman-proxyone.hf.space/sink/",
on: {
proxyReq: rewriteRequest
},
changeOrigin: true,
pathRewrite: {
[`^/redirect_test`]: '',
},
}));
async function start() {
console.log("Start A");
app.listen(PORT, async () => {
console.log("Listening now!");
});
console.log("Start B");
}
start();
console.log('Debug ok started'); |