first commit

This commit is contained in:
2026-04-09 21:35:06 +08:00
commit 22fe6e069c
38 changed files with 12631 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import { getBaseUrl } from './url.js'
import { ElMessage } from 'element-plus'
async function request(path, options = {}) {
const { headers = {}, silent = false, ...rest } = options
const url = `${getBaseUrl()}${path}`
const config = {
headers: {
'Content-Type': 'application/json',
...headers,
},
...rest,
}
try {
const res = await fetch(url, config)
if (!res.ok) {
const msg = await res.text().catch(() => '')
const errMsg = `请求失败: ${res.status}${msg ? ' - ' + msg : ''}`
if (!silent) ElMessage.error(errMsg)
return Promise.reject(new Error(errMsg))
}
// 空响应
const text = await res.text()
if (!text) return Promise.resolve(null)
const data = JSON.parse(text)
return Promise.resolve(data)
} catch (err) {
if (!silent) ElMessage.error(err.message || '网络连接失败')
return Promise.reject(err)
}
}
export default request