Forge Model Derivatives:GET元数据总是返回202



我试图获得nwd格式的大文件的派生树Json视图,但它总是以状态代码202:响应

{"结果":"成功"}

我的目标是获取具有名称的树的第一级的dbid。如果这样做有效,将通过{urn}/metadata/{modelGuid}/properties 获取它们的属性

RestClient client = new RestClient("https://developer.api.autodesk.com");
RestRequest request = new RestRequest("/modelderivative/v2/designdata/{urn}/metadata/{modelGuid}", Method.Get);
request.AddHeader("Authorization", "Bearer " + authenticate.access_token);
//request.AddHeader("x-ads-force", true);                
request.AddHeader("Content-Type", "application/json");
request.AddParameter("urn", urn, ParameterType.UrlSegment);
request.AddParameter("modelGuid", guid, ParameterType.UrlSegment);
request.AddParameter("forceget", true, ParameterType.QueryString);
request.AddParameter("objectid", 1, ParameterType.QueryString);
request.AddParameter("level", 1, ParameterType.QueryString);
var response = await client.ExecuteAsync(request);
if (response.StatusCode == System.Net.HttpStatusCode.Accepted)
{
var result = response.Content;
}

谁能帮忙?感谢

根据文档Fetch Object Tree,状态代码202表示:"请求已接受,但处理未完成。反复调用此端点,直到返回200">

如果你使用的是一个大模型,这似乎很正常。但是您应该能够在等待一段时间后得到200响应。

在附加Alex所说的内容后,可以使用do-while检查响应代码是否为200。

ApiResponse<dynamic> treeRes = null;
do
{
treeRes = await // Your API reqeust here
if (treeRes == null) throw new InvalidOperationException('Failed to get tree');
if (treeRes.StatusCode != 200)
System.Threading.Thread.Sleep(60 * 1000);
}
while (treeRes.StatusCode != 200);
var properties = treeRes.Data;

最新更新