Autodesk Forge Viewer 获取存储桶文件以显示多个视图

Autodesk Forge Viewer get bucket files to display multiple views

有谁知道是否可以获取某种数组或类似数组中的所有存储桶文件数据?我正在考虑构建一个查看器,当用户单击所需模型(缩略图)时,您可以在其中加载包含不同模型的不同视图

是的,如果我没有误解你的要求的话。你可以通过GET buckets API得到你所有的桶,你会得到一个这样的桶数组:

{
    "items": [
        {
            "bucketKey": "mybucket1",
            "createdDate": 1508056179005,
            "policyKey": "persistent"
        },
        {
            "bucketKey": "mybucket2",
            "createdDate": 1502411682779,
            "policyKey": "transient"
        },
        {
            "bucketKey": "mybucket3",
            "createdDate": 1502420840319,
            "policyKey": "transient"
        }
    ]
}

然后,你可以通过GET buckets/:bucketKey/objects API遍历所有这些桶来获取每个桶下的所有文件,它将为你提供一个项目数组,如下所示:

{
    "items": [
        {
            "bucketKey": "mybucket1",
            "objectKey": "mytestbim1.rvt",
            "objectId": "urn:adsk.objects:os.object:mybucket1/mytestbim1.rvt",
            "sha1": "248205b7609ca95c04e4d60fee2ad7b6bd9a2uy2",
            "size": 17113088,
            "location": "https://developer.api.autodesk.com/oss/v2/buckets/mybucket1/objects/mytestbim1.rvt"
        },
        {
            "bucketKey": "mybucket1",
            "objectKey": "mytestbim2.rvt",
            "objectId": "urn:adsk.objects:os.object:mybucket1/mytestbim2.rvt",
            "sha1": "248205b7609ca95c04e4d60fee2ad7b6bd8a2322",
            "size": 17113088,
            "location": "https://developer.api.autodesk.com/oss/v2/buckets/mybucket1/objects/mytestbim2.rvt"
        }        
    ]
}

最重要的值是“objectId”,经过base64编码后就是urn,可以得到所有的导数使用此 urn,您还可以在翻译成 SVF 后在 Forge Viewer 中加载 urn

我们有 Forge Node.js Boilers 的代码示例,您可以查看项目 5,看看您是否对它感兴趣。

希望对您有所帮助。