@@ -139,11 +139,8 @@ async function processFileUpload(context, formdata = null) {
139139 let imageDimensions = null ;
140140 if ( fileType . startsWith ( 'image/' ) ) {
141141 try {
142- // JPEG 需要更多数据(EXIF 可能很大),其他格式 512 字节足够
143- const lowerType = fileType . toLowerCase ( ) ;
144- const isJpeg = lowerType === 'image/jpeg' || lowerType === 'image/jpg' || lowerType === 'image/pjpeg' ;
145- const readSize = isJpeg ? 65536 : 512 ;
146- const headerBuffer = await file . slice ( 0 , readSize ) . arrayBuffer ( ) ;
142+ // 统一读取 64KB,足以覆盖 JPEG 的 EXIF 数据和其他格式
143+ const headerBuffer = await file . slice ( 0 , 65536 ) . arrayBuffer ( ) ;
147144 imageDimensions = getImageDimensions ( headerBuffer , fileType ) ;
148145 } catch ( error ) {
149146 console . error ( 'Error reading image dimensions:' , error ) ;
@@ -287,16 +284,12 @@ async function uploadFileToCloudflareR2(context, fullId, metadata, returnLink) {
287284
288285 const R2DataBase = env . img_r2 ;
289286
290- // 写入R2数据库,获取实际存储大小
291- const r2Object = await R2DataBase . put ( fullId , formdata . get ( 'file' ) ) ;
287+ // 写入R2数据库
288+ await R2DataBase . put ( fullId , formdata . get ( 'file' ) ) ;
292289
293290 // 更新metadata
294291 metadata . Channel = "CloudflareR2" ;
295292 metadata . ChannelName = r2Channel . name || "R2_env" ;
296- // 使用 R2 返回的实际文件大小
297- if ( r2Object && r2Object . size ) {
298- metadata . FileSize = ( r2Object . size / 1024 / 1024 ) . toFixed ( 2 ) ;
299- }
300293
301294 // 图像审查,采用R2的publicUrl
302295 const R2PublicUrl = r2Channel . publicUrl ;
@@ -782,7 +775,6 @@ async function uploadFileToHuggingFace(context, fullId, metadata, returnLink) {
782775 // 更新 metadata
783776 metadata . Channel = "HuggingFace" ;
784777 metadata . ChannelName = hfChannel . name || "HuggingFace_env" ;
785- metadata . FileSize = ( file . size / 1024 / 1024 ) . toFixed ( 2 ) ;
786778 metadata . HfRepo = hfChannel . repo ;
787779 metadata . HfFilePath = hfFilePath ;
788780 metadata . HfToken = hfChannel . token ;
0 commit comments