Полагаю, вы спрашиваете длину строки урны base64.
Это зависит от символов objectId
(он же urn объекта, возвращаемого PUT / buckets /: bucketKey / objects /: objectName ), который вы передали в строковый кодировщик base64 с моим опытом, и это будет той же самой урной, которую вы передадите в POST-задание API-интерфейса Forge Model Derivative. Обычно каждая цифра Base64 представляет ровно 6 бит данных из wiki , и здесь есть формула для вычисления длины закодированной строки link :
((4 * n / 3) + 3) & ~3
note1. n
- длина строки вашего objectId
.
Например, длина urn:adsk.objects:os.object:mybucket/example.txt
равна 47. После кодирования base64 результат dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6bXlidWNrZXQvZXhhbXBsZS50eHQ=
length равен ((4 * 47 / 3) + 3) & ~3 = 64
.
note2. Символ заполнения =
должен быть удален при ручном запуске заданий перевода Forge, API-интерфейс Forge Model Derivative не допускает этого. Вот формула:
len of the urn = 64 - n of the padding character `=`
Таким образом, конечная длина строки урны, полученной из ответа API, составляет 64 - 1 = 63
.
Ref. https://en.wikipedia.org/wiki/Base64
note3. Если вы не наберете УДАЛИТЬ: urn / manifest , чтобы удалить переведенные результаты (a.k.a.viewable bubbles), видимые пузырьки будут сохранены на сервере Forge навсегда. Вы также можете использовать видимые пузырьки для доступа к ним, несмотря на то, что файл модели, хранящийся в управляемом вами контейнере OSS, удаляется установленной вами политикой корзины .