咨询Forge API能否查询Revit、DWG等文件的创建软件版本
当然可以!Autodesk Forge的API确实支持提取多种格式文件的创建软件版本信息,下面分格式给你详细说明:
Revit文件:用Model Derivative API的
GET {urn}/metadata端点就行。返回的元数据里会有applicationVersion字段,清晰标注创建这个Revit模型的软件版本(比如Revit 2024),直接解析这个字段就能拿到信息。DWG文件:同样依赖Model Derivative API的元数据接口。DWG的返回数据里会包含
dwgVersion或者applicationVersion相关字段,能看到对应的AutoCAD版本号(比如AutoCAD 2023)。如果需要更细节的信息,也可以用Design Automation API运行自定义脚本提取,但一般metadata接口就足够满足需求了。3DS文件:Model Derivative API返回的3DS元数据中,会包含创建它的3ds Max版本号。不过要注意,部分老旧版本的3DS文件可能元数据记录不全,但主流版本的文件基本都能正常识别。
其他常见CAD格式:像Inventor、SolidWorks这类格式,Model Derivative API的metadata接口也都能返回对应的创建软件版本信息。要是遇到小众格式,可能需要先把文件转换为Forge支持的中间格式,再提取元数据。
简单操作流程
- 先把文件上传到Forge的OSS(对象存储服务),拿到文件的URN。
- 调用Model Derivative API发起翻译任务——哪怕你不需要转换文件格式,发起一个仅提取元数据的任务就行。
- 任务完成后,调用
GET {urn}/metadata接口,解析返回的JSON数据,找到对应的版本字段就搞定了。
小提醒:有些文件如果经过多次编辑保存,返回的可能是最后一次保存时使用的软件版本,而非最初创建的版本,这取决于文件本身的元数据记录情况哦。
内容的提问来源于stack exchange,提问作者Justin Rice

