Commit 61147c49 by wangshouyong

fix

parent d3d4ac9d
......@@ -285,19 +285,28 @@ async function uploadFileByChunks(
} as UploadFileResponseItem
}
// 上传文件 10mb以上用nas分片 10mb以下正常上传
/**
* 上传文件。超过 CHUNK_UPLOAD_THRESHOLD(1MB) 的走 nas 分片,否则走 OA 通道(落阿里云 OSS)。
*
* forceCommon: 不按大小分流,强制走 OA 通道。
* nas 文件现在要带签名访问、链接只有两小时有效期,而企微推送的封面图是永久留存的,
* 两小时后卡片图就挂了,这个场景不走接口返回、后端加不了签。
* OA 组的结论是这类图片改回放阿里云,所以图片一律走 OA 通道。
* 视频仍然走 nas 分片,它的地址由接口返回,后端会自动加签。
*/
export const uploadFile = (
file: File,
options: {
onProgress?: (progress: number) => void
forceCommon?: boolean
} = {},
): {
cancel: () => void
promise: Promise<UploadFileResponseItem>
} => {
const { onProgress } = options
const { onProgress, forceCommon } = options
const controller = new AbortController()
const isChunkUpload = file.size > CHUNK_UPLOAD_THRESHOLD
const isChunkUpload = !forceCommon && file.size > CHUNK_UPLOAD_THRESHOLD
const promise = isChunkUpload
? uploadFileByChunks(file, options, controller.signal)
......
......@@ -129,6 +129,9 @@ const uploadRawFile = async (rawFile: File, uid: number) => {
}
const { promise } = uploadFileApi(rawFile, {
// 本组件只传图片(封面图、商品图、奖品图、头像等),一律走 OA 通道落阿里云。
// nas 上的文件现在要带签名访问、两小时过期,企微推送的封面图会因此挂掉
forceCommon: true,
onProgress: (progress) => {
uploadPercent.value = progress
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment