尝试从BIM 360 URN显示SVF时出错

时间:2020-07-29 01:10:52

标签: autodesk-forge autodesk-viewer

我正在尝试使用以下存储库中的代码示例显示存储在BIM 360中的revit模型:https://github.com/Autodesk-Forge/forge-tutorial-postman/blob/master/docs/display_svf.html

在此html文件中,我只需要提供访问令牌和URN(已编码)。如果我的模型是从我创建的存储桶中上传的,则可以使用该模型,但是当我尝试从BIM 360文档中获取的URN进行操作时,出现Failed fetching Forge manifest错误。

这些是我正在采取的步骤:

获取文档URN

我使用了此端点https://developer.api.autodesk.com/data/v1/projects/b.ef7b0d22-8480-40d6-9749-12e5d7192ac9/folders/urn:adsk.wipprod:fs.folder:co.nAdJ4fwLRRuGem-qpDIlTA/contents

从结果中我得到:

enter image description here

编码URN

此后,我进入https://www.base64encode.org/并对值进行编码

urn:adsk.objects:os.object:wip.dm.prod/ac9e8b48-4a51-4f6a-a7e4-a947c9d6a1e6.rvt

结果是这样的:

dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6d2lwLmRtLnByb2QvYWM5ZThiNDgtNGE1MS00ZjZhLWE3ZTQtYTk0N2M5ZDZhMWU2LnJ2dA

在display_sfv.html中设置我的访问令牌和编码的URN

之后,我将acces令牌和编码的URN放置如下:

enter image description here

最后我从控制台收到此错误:

enter image description here

同样,如果我使用并从创建的存储桶中找到骨灰盒,则此示例仍然有效,但是当我使用骨灰盒时,我从BIM 360文件夹中得到了该错误消息。我的错误在哪里?

1 个答案:

答案 0 :(得分:1)

要从BIM360加载模型,必须使用如下所示的urn衍生物属性:

"derivatives": {
        "data": {
          "type": "derivatives",
          "id": "dXJuOmFkc2sud2lwcWE6ZnMuZmlsZTp2Zi50X3hodWwwYVFkbWhhN2FBaVBuXzlnP3ZlcnNpb249MQ"
        },
        "meta": {
          "link": {
            "href": "/modelderivative/v2/designdata/dXJuOmFkc2sud2lwcWE6ZnMuZmlsZTp2Zi50X3hodWwwYVFkbWhhN2FBaVBuXzlnP3ZlcnNpb249MQ/manifest?scopes=b360project.6f8813fe-31a7-4440-bc63-d8ca97c856b4,global,O2tenant.tenantId"
          }
        }
      },

参考:https://forge.autodesk.com/en/docs/data/v2/reference/http/projects-project_id-versions-version_id-GET/