fix(upload): 支持管理后台管理员身份上传图片并补齐 a-upload 鉴权请求头

这个提交包含在:
xcbyy
2026-10-23 09:48:16 +08:00
父节点 4d2e7b6464
当前提交 8613d40588
共有 3 个文件被更改,包括 30 次插入 和 8 次删除

查看文件

@@ -167,6 +167,7 @@
<a-upload
action="/api/upload"
name="file"
:headers="uploadHeaders"
:show-file-list="false"
@success="handleUploadSuccess"
@error="handleUploadError"
@@ -250,9 +251,15 @@
</template>
<script lang="ts" setup>
import { ref, onMounted } from 'vue';
import { ref, computed, onMounted } from 'vue';
import axios from 'axios';
import { Message } from '@arco-design/web-vue';
import { getToken } from '@/utils/auth';
const uploadHeaders = computed(() => {
const token = getToken();
return token ? { Authorization: `Bearer ${token}` } : {};
});
interface BannerItem {
id: number;
@@ -332,7 +339,11 @@
const handleUploadSuccess = (fileItem: any) => {
const response = fileItem.response;
if (response && response.code === 20000 && response.data?.url) {
formData.value.image = response.data.url;
let url = response.data.url;
if (url.startsWith('/uploads/')) {
url = `https://peiww.gynhc.com${url}`;
}
formData.value.image = url;
Message.success('轮播图片上传成功并已持久化');
} else {
Message.warning('上传完成,但响应格式异常');

查看文件

@@ -355,6 +355,7 @@
<a-upload
action="/api/upload"
name="file"
:headers="uploadHeaders"
:show-file-list="false"
@success="handlePopupUploadSuccess"
@error="handlePopupUploadError"
@@ -1085,6 +1086,12 @@
import { ref, reactive, computed, onMounted } from 'vue';
import { Message } from '@arco-design/web-vue';
import axios from 'axios';
import { getToken } from '@/utils/auth';
const uploadHeaders = computed(() => {
const token = getToken();
return token ? { Authorization: `Bearer ${token}` } : {};
});
const loading = ref(false);
const saving = ref(false);