fix(config): 更新环境配置和API代理地址

master
钟良源 1 month ago
parent 72df46b096
commit 1ff50c6089

@ -2,5 +2,5 @@
VITE_USER_NODE_ENV=development VITE_USER_NODE_ENV=development
# 子应用地址(开发环境) # 子应用地址(开发环境)
VITE_LABEL_APP_URL=http://localhost:3004/labelapp/ VITE_LABEL_APP_URL=https://aistudio.ngsk.tech:7001/labelapp/
VITE_FLOW_APP_URL=http://localhost:9222/flowapp/ VITE_FLOW_APP_URL=https://aistudio.ngsk.tech:7001/flowapp/

@ -2,5 +2,5 @@
VITE_USER_NODE_ENV=production VITE_USER_NODE_ENV=production
# 子应用地址(生产环境,相对路径,部署在同一域名下) # 子应用地址(生产环境,相对路径,部署在同一域名下)
VITE_LABEL_APP_URL=/labelapp/ VITE_LABEL_APP_URL=https://aistudio.ngsk.tech:7001/labelapp/
VITE_FLOW_APP_URL=/flowapp/ VITE_FLOW_APP_URL=https://aistudio.ngsk.tech:7001/flowapp/

@ -50,9 +50,9 @@ export default defineConfig({
changeOrigin: true, changeOrigin: true,
}, },
'/databuilder/v1': { '/databuilder/v1': {
target: 'http://192.168.8.131:29380', // target: 'http://192.168.8.131:29380',
target: 'https://aistudio.ngsk.tech:7001/',
changeOrigin: true, changeOrigin: true,
pathRewrite: { '^/databuilder': '/' },
}, },
}, },
writeToDisk: true, writeToDisk: true,

@ -1,4 +1,4 @@
let api_host = `/databuilder/v1`; let api_host = `/api/databuilder/v1`;
export { api_host }; export { api_host };

@ -72,7 +72,7 @@ const authorizationBearerFailed = (error: any) => {
const requestConfig = { const requestConfig = {
timeout: 99999, timeout: 99999,
baseURL: '/databuilder', baseURL: '/api/databuilder',
}; };
const request = axios.create(requestConfig); const request = axios.create(requestConfig);

@ -24,7 +24,8 @@ export default defineConfig({
}, },
proxy: { proxy: {
"/databuilder": { "/databuilder": {
target: "http://192.168.8.131:28080", // target: "http://192.168.8.131:28080",
target: 'https://aistudio.ngsk.tech:7001/',
changeOrigin: true, changeOrigin: true,
}, },
"/ws": { "/ws": {

@ -12,6 +12,8 @@ export interface RegisterParams {
} }
export interface LoginResponse { export interface LoginResponse {
code: number
message: string
access_token: string access_token: string
token_type: string token_type: string
} }
@ -36,10 +38,28 @@ userAuthService.interceptors.request.use(
// 响应拦截器 // 响应拦截器
userAuthService.interceptors.response.use( userAuthService.interceptors.response.use(
response => response, response => {
const { code, message } = response.data
// code 为 0 表示成功
if (code === 0) {
return response
}
// code 为 401 表示未授权,跳转登录
if (code === 401) {
localStorage.removeItem('Access-Token')
localStorage.removeItem('Refresh-Token')
window.location.href = '/#/login'
return Promise.reject(new Error(message || '登录已过期,请重新登录'))
}
// 其他非 0 的 code 视为业务错误
return Promise.reject(new Error(message || '请求失败'))
},
error => { error => {
if (error.response?.status === 401) { if (error.response?.status === 401) {
// 清除 token 并跳转登录 // HTTP 401 状态码,清除 token 并跳转登录
localStorage.removeItem('Access-Token') localStorage.removeItem('Access-Token')
localStorage.removeItem('Refresh-Token') localStorage.removeItem('Refresh-Token')
window.location.href = '/#/login' window.location.href = '/#/login'

@ -70,7 +70,7 @@ const rootUrl = ref('');
onMounted(() => { onMounted(() => {
const appUrl = getAppDetail('label-app')?.appUrl || ''; // 线 const appUrl = getAppDetail('label-app')?.appUrl || ''; // 线
const devUrl = 'http://localhost:3004/labelapp/'; const devUrl = 'https://aistudio.ngsk.tech:7001/labelapp/';
const isProd = (import.meta as any).env.VITE_USER_NODE_ENV === 'production'; const isProd = (import.meta as any).env.VITE_USER_NODE_ENV === 'production';
const commonUrl = config ? `tasks/${taskId}/edit` : `tasks/${taskId}/samples/${sampleId}?media_type=${media_type}`; const commonUrl = config ? `tasks/${taskId}/edit` : `tasks/${taskId}/samples/${sampleId}?media_type=${media_type}`;

@ -231,7 +231,7 @@ onMounted(() => {
if (appUrl) { if (appUrl) {
baseUrl.value = appUrl; baseUrl.value = appUrl;
} else { } else {
baseUrl.value = 'http://localhost:3004/'; baseUrl.value = 'https://aistudio.ngsk.tech:7001/';
} }
}); });

@ -459,7 +459,7 @@ const previewFlowHandle = (row: any) => {
previewUrl.value = appUrl + commonUrl; previewUrl.value = appUrl + commonUrl;
microAppX.setData('flow-app-log', {...postData, server_ip: location.origin, isPreview: true}); microAppX.setData('flow-app-log', {...postData, server_ip: location.origin, isPreview: true});
} else { } else {
previewUrl.value = 'http://localhost:9222/flowapp/' + commonUrl; previewUrl.value = 'https://aistudio.ngsk.tech:7001/flowapp/' + commonUrl;
microAppX.setData('flow-app-log', {...postData, server_ip: undefined, isPreview: true}); microAppX.setData('flow-app-log', {...postData, server_ip: undefined, isPreview: true});
} }
}; };

@ -36,7 +36,7 @@ onMounted(() => {
microAppX.setData('flow-app', {...postData, server_ip: location.origin, isTemplate: route.query.isTemplate}); // microAppX.setData('flow-app', {...postData, server_ip: location.origin, isTemplate: route.query.isTemplate}); //
} else { } else {
// //
baseUrl.value = 'http://localhost:9222/flowapp/' + commonUrl; baseUrl.value = 'https://aistudio.ngsk.tech:7001/flowapp/' + commonUrl;
microAppX.setData('flow-app', {...postData, server_ip: undefined, isTemplate: route.query.isTemplate}); // 使 microAppX.setData('flow-app', {...postData, server_ip: undefined, isTemplate: route.query.isTemplate}); // 使
} }
}); });

@ -378,7 +378,7 @@ onMounted(async () => {
}); // }); //
} else { } else {
// //
baseUrl.value = 'http://localhost:9222/flowapp/' + commonUrl; baseUrl.value = 'https://aistudio.ngsk.tech:7001/flowapp/' + commonUrl;
microAppX.setData('flow-app-log', { ...postData, server_ip: undefined, logBaseUrl: config.value.storage_space_base_url }); // 使 microAppX.setData('flow-app-log', { ...postData, server_ip: undefined, logBaseUrl: config.value.storage_space_base_url }); // 使
} }
}); });

@ -24,7 +24,7 @@ const router = useRouter()
const baseUrl = ref('') const baseUrl = ref('')
// //
const devUrl = 'http://localhost:3004/labelapp/' const devUrl = 'https://aistudio.ngsk.tech:7001/labelapp/'
onMounted(() => { onMounted(() => {
// URL // URL

@ -12,21 +12,29 @@
<div class="brand-section"> <div class="brand-section">
<div class="brand-content"> <div class="brand-content">
<div class="brand-icon"> <div class="brand-icon">
<el-icon :size="48"><DataAnalysis /></el-icon> <el-icon :size="48">
<DataAnalysis/>
</el-icon>
</div> </div>
<h1 class="brand-title">数据工厂</h1> <h1 class="brand-title">数据工厂</h1>
<p class="brand-desc">智能数据处理与分析平台</p> <p class="brand-desc">智能数据处理与分析平台</p>
<div class="brand-features"> <div class="brand-features">
<div class="feature-item"> <div class="feature-item">
<el-icon><Check /></el-icon> <el-icon>
<Check/>
</el-icon>
<span>数据连接与集成</span> <span>数据连接与集成</span>
</div> </div>
<div class="feature-item"> <div class="feature-item">
<el-icon><Check /></el-icon> <el-icon>
<Check/>
</el-icon>
<span>流程自动化处理</span> <span>流程自动化处理</span>
</div> </div>
<div class="feature-item"> <div class="feature-item">
<el-icon><Check /></el-icon> <el-icon>
<Check/>
</el-icon>
<span>智能数据标注</span> <span>智能数据标注</span>
</div> </div>
</div> </div>
@ -83,7 +91,8 @@
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<div class="register-link"> <div class="register-link">
还没有账号<router-link to="/register">立即注册</router-link> 还没有账号
<router-link to="/register">立即注册</router-link>
</div> </div>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -247,8 +256,7 @@ const handleLogin = async () => {
content: ''; content: '';
position: absolute; position: absolute;
inset: 0; inset: 0;
background: background: radial-gradient(circle at 20% 80%, rgba(255, 255, 255, 0.1) 0%, transparent 50%),
radial-gradient(circle at 20% 80%, rgba(255, 255, 255, 0.1) 0%, transparent 50%),
radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.08) 0%, transparent 50%); radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.08) 0%, transparent 50%);
} }
} }

@ -54,39 +54,15 @@ export default defineConfig({
}, },
// databuilder 数据工厂服务 // databuilder 数据工厂服务
'/api/databuilder': { '/api/databuilder': {
target: 'http://192.168.8.131:29380', // target: 'http://192.168.8.131:29380',
target: 'https://aistudio.ngsk.tech:7001/',
changeOrigin: true, changeOrigin: true,
rewrite: path => path.replace(/^\/api\/databuilder/, '')
}, },
// 数据工厂专用鉴权接口 // 数据工厂专用鉴权接口
'/api/databuilder/v1/': { '/api/databuilder/v1/': {
target: 'http://192.168.8.131:8084', // target: 'http://192.168.8.131:8084',
target: 'https://aistudio.ngsk.tech:7001/',
changeOrigin: true, changeOrigin: true,
rewrite: path => path.replace(/^\/api\/databuilder\/v1/, '')
},
// console API (dify agents 服务)
'/api/console': {
target: 'http://192.168.8.122:12800/console',
changeOrigin: true,
rewrite: path => path.replace(/^\/api\/console/, '')
},
// 通用 API
'/api': {
target: 'http://192.168.8.207:8084/api',
changeOrigin: true,
rewrite: path => path.replace(/^\/api/, '')
},
// 文件存储服务
'/storage': {
target: 'http://192.168.8.207:8084/storage',
changeOrigin: true,
rewrite: path => path.replace(/^\/storage/, '')
},
// 文件预览服务
'/kkpreview': {
target: 'http://192.168.8.207:8084/kkpreview',
changeOrigin: true,
rewrite: path => path.replace(/^\/kkpreview/, '')
}, },
}, },
}, },

Loading…
Cancel
Save