簡體   English   中英

Autodesk Forge API。 如何獲得特定版本的物品?

[英]Autodesk Forge API. How to get specific version of item?

我要從 Autodesk Forge 獲取該項目的特定版本。 我使用這個指令來做到這一點。 有一個請求模板:

GET projects/:project_id/versions/:version_id/item

所以我的請求看起來很相似(為了簡潔,我剪掉了一部分):

https://developer.api.autodesk.com/data/v1/projects/a.cGV ... TU2/versions/urn:adsk.wipprod:fs.file:vf.lTvo5GGBRzidiQ8Kredbaw?version=1/item

但是請求返回錯誤 400 (錯誤請求)。

當我以相同的方式(當然使用用於此模板的預期)獲取項目時,一切正常。

我應該使用這個模板還是其他模板? 我究竟做錯了什么?

version_id應該轉義為 URL 安全形式,因為此參數中有一些保留和不安全的關鍵字(即:.?= )。 他們將使您對 Forge 服務的請求無效。 (參考)

例如,您的 version_id 是urn:adsk.wipprod:fs.file:vf.d34fdsg3g?version=2 ,那么您必須將其轉換為:

urn%3Aadsk.wipprod%3Afs.file%3Avf.b909RzMKR4mhc3O7UBY_8g%3Fversion%3D2


在 JavaScript 中, encodeURIComponent() ( Ref ) 函數可以幫助您進行這種轉換。 這是給您的示例:

encodeURIComponent('urn:adsk.wipprod:fs.file:vf.d34fdsg3g?version=2')

如果您的代碼是用 C# 編寫的,您可以調用Uri.EscapeDataString() ( Ref ) 來存檔相同的目標。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM