UploadObject - изменения в файле не учитываются - PullRequest
0 голосов
/ 31 октября 2018

API Forge https://forge.autodesk.com/en/docs/data/v2/reference/http/buckets-:bucketKey-objects-:objectName-PUT/ имеет понятный метод для перезаписи существующего объекта с тем же именем файла - заголовок 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 документа, похоже, не меняется.

Я немедленно вызываю другое задание по переводу для этого файла (которое выполняется очень быстро), подожду несколько минут и перейду на страницу просмотра, которая загружает документ URN.

Зритель показывает первую версию файла, при этом дверь все еще присутствует.

Чего мне не хватает?

1 Ответ

0 голосов
/ 05 ноября 2018

Если URN не был изменен после перевода версий, добавьте следующий заголовок, чтобы служба регенерировала все видимые изображения:

x-ads-force: true

Проверил и обнаружил, что это работает для других. См. здесь , здесь , здесь и здесь .

Еще одна вещь, которую вы можете попробовать, это удалить манифест, прежде чем запустить работу. А также не позволяйте кешу браузера быть ловушкой здесь.

...