mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-11 16:09:01 +08:00
feat: Node.js 前端代理后端路由 需设置环境变量 注意安全 SUB_STORE_FRONTEND_BACKEND_PATH=/prefix
This commit is contained in:
parent
8f2dbfe3df
commit
c35e9d37ae
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "sub-store",
|
"name": "sub-store",
|
||||||
"version": "2.14.124",
|
"version": "2.14.125",
|
||||||
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.",
|
"description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.",
|
||||||
"main": "src/main.js",
|
"main": "src/main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -71,15 +71,21 @@ export default function serve() {
|
|||||||
let be_rewrite = '';
|
let be_rewrite = '';
|
||||||
let be_api = '/api/';
|
let be_api = '/api/';
|
||||||
if (fe_be_path) {
|
if (fe_be_path) {
|
||||||
be_rewrite = `${fe_be_path}/api/`;
|
if (!fe_be_path.startsWith('/')) {
|
||||||
|
throw new Error(
|
||||||
|
'SUB_STORE_FRONTEND_BACKEND_PATH should start with /',
|
||||||
|
);
|
||||||
|
}
|
||||||
|
be_rewrite = `${fe_be_path === '/' ? '' : fe_be_path}${be_api}`;
|
||||||
app.use(
|
app.use(
|
||||||
fe_be_path,
|
be_rewrite,
|
||||||
createProxyMiddleware({
|
createProxyMiddleware({
|
||||||
target: `http://127.0.0.1:${port}`,
|
target: `http://127.0.0.1:${port}`,
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
ws: true,
|
pathRewrite: (path) => {
|
||||||
pathRewrite: {
|
return path.startsWith(be_rewrite)
|
||||||
[`^${be_rewrite}`]: be_api,
|
? path.replace(be_rewrite, be_api)
|
||||||
|
: path;
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user