有没有办法链接 Autodesk Forge 存储桶?

Posted

技术标签:

【中文标题】有没有办法链接 Autodesk Forge 存储桶?【英文标题】:Is there a way to link Autodesk Forge Buckets? 【发布时间】:2019-09-08 18:05:07 【问题描述】:

我在 Autodesk Forge 存储中创建了两个存储桶(myprojectbucketmyscenariobucket),但是我可以将它们链接在一起吗?例如,如果我删除了myprojectbucket 存储桶,我也希望它删除myscenariobucket 存储桶。程序有没有办法识别链接的存储桶?

我试图通过让project 存储桶的行为类似于主项目,而scenario 存储桶的行为类似于可以上传文件的文件夹来区分它们。

项目桶


    "bucketKey": "myprojectbucket",
    "createdDate": "1555586879197",
    "policyKey": "transient"

场景桶


    "bucketKey": "myscenariobucket",
    "createdDate": "1555586121454",
    "policyKey": "transient"

场景存储桶中的文件

[
    
        "bucketKey": "myscenariobucket",
        "objectId": "urn:adsk.objects:os.object:myscenariobucket/MyNewFile.txt",
        "objectKey": "MyNewFile.txt",
        "sha1": "6ebea95f436eca94a9e541878db7b37b01cc5300",
        "size": 23,
        "contentType": "application/octet-stream",
        "location": "https://developer.api.autodesk.com/oss/v2/buckets/myscenariobucket/objects/MyNewFile.txt",
        "blockSizes": [],
        "deltas": [],
        "status": "OK"
    
]

如果我删除myscenariobucket,它应该删除存储在里面的MyNewFile.txt文件。这目前按预期工作。但是,如果我删除myprojectbucket,我希望它同时删除myscenariobucketMyNewFile.txt

【问题讨论】:

【参考方案1】:

不,Forge 存储桶的工作方式与 AWS S3 或 Azure Objects 类似。因此,您不能指望在删除另一个时删除一个。我注意到您的存储桶策略是“policyKey”:“transient”,因此您的文件将在 24 小时后自动删除。这意味着如果您同时在每个存储桶中发布一个文件,它们都将在 24 小时后被删除。

现在,您可以执行以下操作以获得与您的请求相同的结果;使用前缀存储您的文件,如下所示;所以当存储桶被删除时,一切都结束了。

只得到一个桶


    "bucketKey": "mybucket",
    "createdDate": "1555586879197",
    "policyKey": "transient"

用前缀scenario/或project/将所有文件存储在其中

[
    
        "bucketKey": "mybucket",
        "objectId": "urn:adsk.objects:os.object:mybucket/project/MyNewFile.txt",
        "objectKey": "project/MyNewFile.txt",
        "sha1": "6ebea95f436eca94a9e541878db7b37b01cc5300",
        "size": 23,
        "contentType": "application/octet-stream",
        "location": "https://developer.api.autodesk.com/oss/v2/buckets/mybucket/objects/project/MyNewFile.txt",
        "blockSizes": [],
        "deltas": [],
        "status": "OK"
    ,
    
        "bucketKey": "mybucket",
        "objectId": "urn:adsk.objects:os.object:mybucket/scenario/MyNewFile.txt",
        "objectKey": "scenario/MyNewFile.txt",
        "sha1": "6ebea95f436eca94a9e541878db7b37b01cc5300",
        "size": 23,
        "contentType": "application/octet-stream",
        "location": "https://developer.api.autodesk.com/oss/v2/buckets/mybucket/objects/scenario/MyNewFile.txt",
        "blockSizes": [],
        "deltas": [],
        "status": "OK"
    
]

希望对你有帮助,

【讨论】:

以上是关于有没有办法链接 Autodesk Forge 存储桶?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在 Autodesk Forge Reality Capture API 上检查每次重建 (photoscene_id) 消耗的云积分?

使用 AutoDesk Forge 合并多个 3D 文件

Forge 查看器上的 3D 标记

Autodesk Forge - 文档管理“描述”和“集”信息可用性

在 Autodesk Forge Viewer 中对齐坐标系

在 Autodesk Forge 查看器中显示链接文件