You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
645 B
25 lines
645 B
const proxyTableList = ['cli', 'v1', 'auth', 'v1-openai', 'version'];
|
|
|
|
// @ts-ingore
|
|
export default function createProxyTable(target?: string) {
|
|
const proxyTable = proxyTableList.reduce(
|
|
(obj: Record<string, object>, api) => {
|
|
const newTarget = target || 'http://localhost';
|
|
obj[`/${api}`] = {
|
|
target: newTarget,
|
|
changeOrigin: true,
|
|
secure: false,
|
|
ws: true,
|
|
pathRewrite: (pth: string) => pth.replace(`/^/${api}`, `/${api}`),
|
|
headers: {
|
|
origin: newTarget,
|
|
Connection: 'keep-alive'
|
|
}
|
|
};
|
|
return obj;
|
|
},
|
|
{}
|
|
);
|
|
return proxyTable;
|
|
}
|