From 03d5cde838eb134639c62e855ffbdbc4c243a787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=BE=B7=E5=AE=87?= Date: Mon, 21 Sep 2026 15:11:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=9F=E4=B8=80=E6=A8=A1=E5=9E=8B=E5=AD=97?= =?UTF-8?q?=E8=8A=82=E8=AF=BB=E5=8F=96=E5=A4=B1=E8=B4=A5=E7=9A=84=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E5=8F=A3=E5=BE=84=20-=20response.arrayBuffer()=20?= =?UTF-8?q?=E5=8E=9F=E5=85=88=E5=9C=A8=20fetch=20=E7=9A=84=20try/catch=20?= =?UTF-8?q?=E4=B9=8B=E5=A4=96=EF=BC=8C=E8=AF=BB=E5=88=B0=E4=B8=80=E5=8D=8A?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E4=BC=9A=E7=9B=B4=E6=8E=A5=E6=8A=9B=E5=87=BA?= =?UTF-8?q?=E5=BA=95=E5=B1=82=20DOMException=20-=20=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E5=8C=85=E4=B8=80=E5=B1=82=E5=B9=B6=E6=8A=8A=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E5=BD=92=E4=B8=80=E6=88=90=20Model3dViewerLoadError=20?= =?UTF-8?q?=E7=9A=84=20load-failed=EF=BC=8C=E4=B8=8E=E5=85=B6=E5=AE=83?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=E5=A4=B1=E8=B4=A5=E8=B7=AF=E5=BE=84=E4=B8=80?= =?UTF-8?q?=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/model3d-viewer/src/loader.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/model3d-viewer/src/loader.ts b/packages/model3d-viewer/src/loader.ts index 018b5b949..574d8c153 100644 --- a/packages/model3d-viewer/src/loader.ts +++ b/packages/model3d-viewer/src/loader.ts @@ -99,7 +99,15 @@ export async function readModel3dViewerSourceBytes( assertModel3dViewerByteLength(declaredLength); } - const data = await response.arrayBuffer(); + let data: ArrayBuffer; + try { + data = await response.arrayBuffer(); + } catch (error) { + throw new Model3dViewerLoadError( + 'load-failed', + `模型数据读取失败:${describeModel3dViewerError(error)}`, + ); + } assertModel3dViewerByteLength(data.byteLength); return data; }