fix: use configured backend_url for API base instead of /api path
- Read HF_BACKEND_BASE_URL from localStorage in api client - Refresh baseURL on each request interceptor - Persist backend_url from wizard config during app bootstrap - Persist backend_base_url after setup save
This commit is contained in:
@@ -33,7 +33,11 @@ export default function App() {
|
||||
const res = await axios.get(`${WIZARD_BASE}/api/v1/config/harborforge.json`, {
|
||||
timeout: 5000,
|
||||
})
|
||||
if (res.data && res.data.initialized === true) {
|
||||
const cfg = res.data || {}
|
||||
if (cfg.backend_url) {
|
||||
localStorage.setItem('HF_BACKEND_BASE_URL', cfg.backend_url)
|
||||
}
|
||||
if (cfg.initialized === true) {
|
||||
setAppState('ready')
|
||||
} else {
|
||||
setAppState('setup')
|
||||
|
||||
@@ -92,6 +92,10 @@ export default function SetupWizardPage({ wizardBase, onComplete }: Props) {
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
})
|
||||
|
||||
if (form.backend_base_url) {
|
||||
localStorage.setItem('HF_BACKEND_BASE_URL', form.backend_base_url)
|
||||
}
|
||||
|
||||
setStep(4)
|
||||
} catch (err: any) {
|
||||
setError(`保存配置失败: ${err.message}`)
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
import axios from 'axios'
|
||||
|
||||
const getApiBase = () => {
|
||||
return localStorage.getItem('HF_BACKEND_BASE_URL') || import.meta.env.VITE_API_BASE || 'http://127.0.0.1:8000'
|
||||
}
|
||||
|
||||
const api = axios.create({
|
||||
baseURL: import.meta.env.VITE_API_BASE || '/api',
|
||||
baseURL: getApiBase(),
|
||||
})
|
||||
|
||||
api.interceptors.request.use((config) => {
|
||||
config.baseURL = getApiBase()
|
||||
const token = localStorage.getItem('token')
|
||||
if (token) {
|
||||
config.headers.Authorization = `Bearer ${token}`
|
||||
|
||||
Reference in New Issue
Block a user