#autodesk-forge
#autodesk-forge
Вопрос:
Я использую autodesk Forge для публикации задания для создания эскизов. Ниже приведен текст httpheaders, который я отправляю.
{ "input" :
{ "urn":"urnNum",
"compressedUrn" : true,
"rootFilename" : "RodDesign"},
"output" :
{ "destination" : { "region" : "us"},
"formats" : [{"type":"thumbnail"}]
}
}
Код состояния равен 200, но он возвращает ответ :
Failed to download the design description for the input design.
Я не уверен, как это интерпретировать. Я не знаю, проблема ли это с данными, которые я отправил, или проблема с файлом, к которому я пытаюсь получить доступ, или что-то еще.
Любая помощь приветствуется.
Ответ №1:
Ваше rootfilename
имя должно быть полным с именем расширения и точно соответствовать файлу модели в архиве:
{ "input" :
{ "urn":"dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6bW9kZWxkZXJpdmF0aXZlL0E1LnppcA",
"compressedUrn" : true,
"rootFilename" : "RodDesign.rvt"},
"output" :
{
"formats" : [{"type":"thumbnail"}] //output region defaults to US so no need for it here
}
}
Если у вашего файла модели нет имени расширения, наш механизм не сможет определить, в какой экстрактор его отправить — наш механизм перевода определяет тип файла модели на основе его имени расширения (например, rvt, dwg и т.д.).
Также убедитесь, что архив полностью загружен в корзину — запросите сведения об объекте с помощью GET buckets/:bucketKey/objects/:objectName/details и проверьте его размер и SHA1 (можете использовать это для вычисления для ваших локальных файлов, и дайджесты должны быть идентичными для одного и того же содержимого).
Редактировать
Что такое архив?
ZIP, RAR, TAR и т. Д.
Почему нам нужно использовать имя файла с расширением, когда мы присваиваем ему urn, которое должно быть уникальным идентификатором, из которого извлекается запись, сообщающая читателю тип файла? Я не вижу тип файла в данных forge. Как мы можем определить это программно?
Если вы переводите файл проекта напрямую, а не архив (см. Здесь, чтобы понять, что это значит), тогда оставьте compressedUrn
и. rootFilename
Подробности см. В руководстве здесь.
Как мы узнаем, сжат ли файл? Если коду требуется расширение имени корневого файла, чтобы отправить его в нужное средство извлечения, почему это не требуется для файла, который не сжимается?
Конечно, наша служба перевода требует, чтобы файлы модели в корзине имели правильное имя расширения, чтобы она могла отправлять их в правильный экстрактор.
Как мне узнать формат файла? Что используется по умолчанию для Fusion 360? Как я узнаю, правильный ли у меня формат, и есть ли просто другая ошибка, выдающая то же сообщение?
Это будет f2d для 2d-чертежа и f3d для 3D-моделей. Вы всегда можете найти ответы в Google для поиска правильных имен расширений.
Это проблема с поиском исходного файла и как мне ее решить?
Вам нужно будет убедиться, что файл модели в корзине имеет правильное имя расширения, иначе он не будет отправлен в соответствующий экстрактор и, следовательно, ошибка.
Комментарии:
1. Извините, это сбивает меня с толку. У меня сложилось впечатление, что из примеров было то, что корзина была нужна только потому, что мы загружали туда файл для запуска кода. Я не уверен, зачем нам нужна корзина, когда мы извлекаем файл из одного из наших собственных файлов с помощью urn. Что такое архив? Я не вижу этого в документах. Почему нам нужно использовать имя файла с расширением, когда мы присваиваем ему urn, которое должно быть уникальным идентификатором, из которого извлекается запись, сообщающая читателю тип файла? Я не вижу тип файла в данных forge. Как мы можем определить это программно?
2. Сжатый аспект этого также сбивает с толку. Как мы узнаем, сжат ли файл? Если коду требуется расширение имени корневого файла, чтобы отправить его в нужное средство извлечения, почему это не требуется для файла, который не сжимается?
3. Итак, я перепробовал несколько разных форматов, и все они возвращают одну и ту же ошибку. Как мне узнать формат файла? Что используется по умолчанию для Fusion 360? Как я узнаю, правильный ли у меня формат, и есть ли просто другая ошибка, выдающая то же сообщение?
4. Просто удалил параметры compressedURN и footfilename и получил ту же ошибку. Это проблема с поиском исходного файла и как мне ее решить? Идентификатор источника, который я использую, — это URN, извлеченный из forge.
5. См. Редактирование — думал, что вы переводите архив, но на самом деле это был просто f2d / f3d