启动aps-iot-extensions-demo时遇文件扩展名不支持错误求助
解决aps-iot-extensions-demo启动时的模型加载错误
启动aps-iot-extensions-demo项目时,出现如下错误提示:
The file extension loaded into the viewer is not supported
无论是自身带URN和GUID的2022版Revit模型(.rvt),还是官方的rac_basic_sample_project.rvt,均触发该问题,可按以下步骤排查解决:
确认模型转换状态
Autodesk Viewer仅支持SVF/SVF2格式,Revit模型必须通过Model Derivative服务完成转换。即使已有URN和GUID,也需验证转换结果:- 调用
GET /modelderivative/v2/designdata/{urn}/manifest接口查看转换状态 - 确保返回的manifest中存在
type: "geometry"的资源,且其status为success - 若转换失败,检查请求参数是否正确指定了输出格式为
svf或svf2
- 调用
核对URN与视图GUID配置
- 确认项目配置文件(如
.env)中的URN是Base64编码且已去掉末尾等号的格式 - 视图GUID必须对应模型中已成功转换的视图(如默认3D视图),可从manifest的
derivatives节点中提取对应视图的guid
- 确认项目配置文件(如
检查Viewer初始化逻辑
排查项目中加载模型的代码细节:- 确保
Autodesk.Viewing.Initializer配置了有效的APS访问凭证 - 调用
viewer.loadDocumentNode时,传入的文档对象与视图节点参数无误 - 未错误指定不支持的文件格式参数
- 确保
验证依赖版本兼容性
aps-iot-extensions-demo可能依赖特定版本的Autodesk Viewer,检查项目package.json中的@types/forge-viewer等依赖版本,确保与Model Derivative转换的格式兼容(如SVF2需Viewer7及以上版本支持)测试极简加载流程
编写极简Demo验证模型本身可正常加载,排除项目代码逻辑问题:Autodesk.Viewing.Initializer({ accessToken: '你的有效访问令牌' }, () => { const viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('viewer-container')); viewer.start(); const encodedUrn = '你的Base64编码URN'; Autodesk.Viewing.Document.load(`urn:${encodedUrn}`, (doc) => { const defaultView = doc.getRoot().getDefaultGeometry(); viewer.loadDocumentNode(doc, defaultView); }, (error) => { console.error('模型加载失败:', error); }); });
内容的提问来源于stack exchange,提问作者salahelfarissi
相关产品推荐
相关产品推荐

