【问题标题】:Forge-Application BIM 360 viewer dropdown selection of projectsForge-Application BIM 360 查看器下拉选择项目
【发布时间】:2021-12-16 03:21:56
【问题描述】:

如何在 BIM 360 Viewer forge 应用程序、NodeJS 应用程序中为用户获取所有可用项目的下拉选择。

【问题讨论】:

    标签: node.js autodesk-forge autodesk-model-derivative autodesk-bim360


    【解决方案1】:

    您可以在服务器端 Node.js 应用程序中使用 Forge SDK,使用此端点:https://forge.autodesk.com/en/docs/data/v2/reference/http/hubs-hub_id-projects-GET 获取特定 BIM 360“集线器”的所有项目列表。 Node.js 代码可能如下所示:https://github.com/petrbroz/forge-hubs-browser-nodejs/blob/develop/services/forge.js#L64-L67。然后,您的客户端 JavaScript 可以获取此项目列表,并使用它们填充 <select> 元素。

    或者,您也可以直接从客户端检索项目列表。这就是我在这个演示应用程序中所做的:https://forgeextraderivatives.z6.web.core.windows.net。我将以下脚本添加到我的 HTML:

    <script src="https://cdn.jsdelivr.net/npm/forge-server-utils/dist/browser/forge-server-utils.js"></script>
    

    然后,在从服务器端获取访问令牌后,我执行以下操作:

    const bim360Client = new forge.BIM360Client({ token: '...' });
    async function updateProjectsDropdown() {
        const $projects = $('#projects');
        $projects.empty();
        const projects = await bim360Client.listProjects($('#hubs').val());
        for (const project of projects) {
            $projects.append(`<option value="${project.id}">${project.name}</option>`);
        }
    }
    

    【讨论】:

    • 谢谢,能否分享一下你上次提到的demo app的源代码
    • 很遗憾,我无法分享这个特定应用程序的源代码,但我会尝试制作一个具有相同功能的简单应用程序。
    • 这是一个演示此功能的简单网页:gist.github.com/petrbroz/0f2e88a6d94fdea644c2107716dac5c6。您只需要以某种方式获取一个 3-legged 令牌(例如,通过遵循 View Hub Models 教程)并将其输入到第一个输入字段。
    猜你喜欢
    • 2021-02-17
    • 2021-03-02
    • 2020-06-24
    • 2021-12-09
    • 2020-11-05
    • 2018-04-01
    • 2019-03-23
    • 2021-05-21
    • 2018-07-23
    相关资源
    最近更新 更多