API Forge https://forge.autodesk.com/en/docs/data/v2/reference/http/buckets-:bucketKey-objects-:objectName-PUT/ имеет четкий метод для перезаписи существующего объекта тем же filename - заголовок If-Match
.
Я использую API C # по адресу https://github.com/Autodesk-Forge/forge-api-dotnet-client, и я вызываю UploadObjectWithHttpInfo
, чтобы загрузить новую версию файла (и установить параметр ifMatch
с правильным хешем SHA1, который я сохранил из предыдущей загрузки). «Новая ревизия» - это не что иное, как тот же самый файл с удаленной очень заметной дверью на южной стороне здания. Визуальная проверка файлов в Revit 2017 показывает, что они разные. Я использую то же имя файла, что и предыдущая версия файла.
Если я не предоставлю правильный SHA-1, API правильно ответит HTTP 412. Если я правильно предоставлю SHA-1, API ответит ожидаемыми результатами, включая новый SHA-1 (который я сохраняю). Документ URN вроде не меняется.
Я немедленно вызываю другое задание Translate для этого файла (которое выполняется очень быстро), жду несколько минут и перехожу на страницу средства просмотра, которая загружает URN документа.
Средство просмотра показывает первую версию файла, при этом дверь все еще присутствует.
Что мне не хватает?