fix: honor presign proxy upload URLs

This commit is contained in:
Lan
2026-06-03 03:01:40 +08:00
parent c6f33096be
commit 4649681245
3 changed files with 13 additions and 3 deletions
+4 -1
View File
@@ -213,10 +213,13 @@ export function usePresignedUpload(options: UsePresignedUploadOptions = {}) {
presignStatus.value = PRESIGN_UPLOAD_STATUS.UPLOADING
const progressHandler = createProgressHandler(options?.onProgress)
const uploadUrl =
session.proxy_upload_url || session.upload_url || session.legacy_proxy_upload_url
const response = await PresignUploadService.proxyUpload(
session.upload_id,
file,
progressHandler
progressHandler,
uploadUrl
)
if (response.code === 200 && response.detail?.code) {
+7 -2
View File
@@ -19,12 +19,17 @@ export class PresignUploadService {
static async proxyUpload(
uploadId: string,
file: File,
onProgress?: (progress: UploadProgress) => void
onProgress?: (progress: UploadProgress) => void,
uploadUrl?: string
): Promise<ApiResponse<PresignUploadResult>> {
const formData = new FormData()
formData.append('file', file)
return api.put(`/presign/upload/proxy/${uploadId}`, formData, multipartUploadConfig(onProgress))
return api.put(
uploadUrl || `/presign/upload/proxy/${uploadId}`,
formData,
multipartUploadConfig(onProgress)
)
}
static async confirmUpload(
+2
View File
@@ -22,6 +22,8 @@ export interface PresignInitRequest {
export interface PresignInitResponse {
upload_id: string
upload_url: string
proxy_upload_url?: string
legacy_proxy_upload_url?: string
mode: PresignUploadMode
expires_in: number
}