【发布时间】:2021-12-16 03:21:56
【问题描述】:
如何在 BIM 360 Viewer forge 应用程序、NodeJS 应用程序中为用户获取所有可用项目的下拉选择。
【问题讨论】:
标签: node.js autodesk-forge autodesk-model-derivative autodesk-bim360
如何在 BIM 360 Viewer forge 应用程序、NodeJS 应用程序中为用户获取所有可用项目的下拉选择。
【问题讨论】:
标签: node.js autodesk-forge autodesk-model-derivative autodesk-bim360
您可以在服务器端 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>`);
}
}
【讨论】: