Commit 14b80244 by 王立鹏

Merge branch 'nas_修改' into 'master'

fix

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