refactor(api): signAndPackReport 直接返回签名 ZIP 文件
This commit is contained in:
@@ -80,7 +80,7 @@ export const signAndPackReport = oc
|
||||
operationId: 'signAndPackReport',
|
||||
summary: '签名并打包报告 ZIP',
|
||||
description:
|
||||
'接收原始 ZIP(multipart/form-data 文件字段 rawZip),由 UX 生成 summary.json、manifest.json、signature.asc,并返回 signedZipBase64。',
|
||||
'接收原始 ZIP(multipart/form-data 文件字段 rawZip),由 UX 生成 summary.json、manifest.json、signature.asc,并直接返回签名后 ZIP 二进制文件。',
|
||||
tags: ['Crypto', 'Report'],
|
||||
})
|
||||
.input(
|
||||
@@ -96,9 +96,4 @@ export const signAndPackReport = oc
|
||||
.describe('原始报告 ZIP 文件(multipart/form-data 字段)'),
|
||||
}),
|
||||
)
|
||||
.output(
|
||||
z.object({
|
||||
deviceSignature: z.string().describe('设备签名(HMAC-SHA256 Base64)'),
|
||||
signedZipBase64: z.string().describe('签名后 ZIP 的 Base64 编码'),
|
||||
}),
|
||||
)
|
||||
.output(z.file().describe('签名后报告 ZIP 文件(二进制响应)'))
|
||||
|
||||
@@ -301,7 +301,7 @@ export const signAndPackReport = os.crypto.signAndPackReport.use(db).handler(asy
|
||||
compressionOptions: { level: 9 },
|
||||
})
|
||||
|
||||
const signedZipBase64 = Buffer.from(signedZipBytes).toString('base64')
|
||||
|
||||
return { deviceSignature, signedZipBase64 }
|
||||
return new File([Buffer.from(signedZipBytes)], `${input.taskId}-signed-report.zip`, {
|
||||
type: 'application/zip',
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user