Autodesk forge 为什么我不能获取清单中的所有数据?

Autodesk forge 为什么我不能获取清单中的所有数据?,autodesk-forge,autodesk-model-derivative,Autodesk Forge,Autodesk Model Derivative,我有一个成功加载和转换的模型,但我还需要提取清单。不幸的是,当我提取清单时,我没有完全得到它。我需要拿到全部舱单。我试图通过递归调用接收清单的函数来解决这个问题,但无论如何,我都没有完全获得清单。我想知道递归调用的函数也不接收清单的原因是什么,以及如何解决这个问题 function getManifest(getToken, urn) { return new Promise(async (resolve, reject) => { const baseUrl = "

我有一个成功加载和转换的模型,但我还需要提取清单。不幸的是,当我提取清单时,我没有完全得到它。我需要拿到全部舱单。我试图通过递归调用接收清单的函数来解决这个问题,但无论如何,我都没有完全获得清单。我想知道递归调用的函数也不接收清单的原因是什么,以及如何解决这个问题

function getManifest(getToken, urn) {
  return new Promise(async (resolve, reject) => {
    const baseUrl = "https://developer.api.autodesk.com";
    const url = `${baseUrl}/modelderivative/v2/designdata/${urn}/manifest`;
    const token = typeof getToken == "function" ? await getToken() : getToken;

    const fetch = () =>
      request(
        {
          url,
          method: "GET",
          headers: {
            Authorization: token,
            "Content-Type": "application/json",
            Accept: "application/json",
          },
          json: true,
        },
        async (err, response, body) => {
          if (err) {
            return reject(err);
          }

          if (body && body.errors) {
            return reject(body.errors);
          }

          if (body.progress !== "complete") {
            await require("util").promisify(setTimeout)(3000);
            return fetch();
          }

          if ([200, 201, 202].indexOf(response.statusCode) < 0) {
            return reject(response);
          }

          return resolve(body || {});
        },
      );

    return fetch();
  });
}
函数getManifest(getToken,urn){ 返回新承诺(异步(解析、拒绝)=>{ 常量baseUrl=”https://developer.api.autodesk.com"; constURL=`${baseUrl}/modelederivative/v2/designdata/${urn}/manifest`; const token=typeof getToken==“函数”?等待getToken():getToken; 常量fetch=()=> 请求( { 网址, 方法:“获取”, 标题:{ 授权:令牌, “内容类型”:“应用程序/json”, 接受:“应用程序/json”, }, 是的, }, 异步(错误、响应、正文)=>{ 如果(错误){ 退货拒绝(err); } if(body&&body.errors){ 返回拒绝(body.errors); } 如果(body.progress!=“完成”){ 等待要求(“util”).promisify(设置超时)(3000); 返回fetch(); } if([200201202].indexOf(response.statusCode)<0){ 返回-拒绝(响应); } 返回解析(body |{}); }, ); 返回fetch(); }); }

发布翻译作业时,完成翻译需要时间(取决于文件大小)

如果您希望在翻译100%完成后立即获取清单,请使用此选项并在post作业中提及workflowid,如图所示


对于开发模式下的webhook url,您可以使用

我尝试了此解决方案,但它用于POST请求,GET请求用于获取清单。只有当清单完全准备好时,我才需要获取清单,我如何才能做到这一点?当清单准备好时,将调用您的webhook url。您应该运行webhook url api,在该api中,您可以调用清单api。在哪里可以找到示例代码?你给我的链接在文件上传过程中起作用。很抱歉,回复太晚,这里是示例代码:请忽略设计自动化部分。非常感谢。