如何形成"GET :urn/manifest/:derivativeurn"请求?
How to form a "GET :urn/manifest/:derivativeurn" request?
我不知道如何从 Forge 下载创建的衍生产品。
这是我从 "GET :urn/manifest" 请求中得到的:
{
"type": "manifest",
"hasThumbnail": "false",
"status": "success",
"progress": "complete",
"region": "US",
"urn": "dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA",
"version": "1.0",
"derivatives": [
{
"name": "Ständer_Y_Oben v1.f3d",
"hasThumbnail": "false",
"status": "success",
"progress": "complete",
"outputType": "obj",
"children": [
{
"guid": "4064073b-a56c-4007-8b87-3cf87c821361",
"type": "resource",
"role": "obj",
"status": "success",
"progress": "complete",
"mime": "application/octet-stream",
"urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj"
}
]
}
]
那么如何形成有效的 "GET :urn/manifest/:derivativeurn" 请求呢?文档说 "urn should be The Base64 (URL Safe) encoded design URN" 和 "derivativeurn should be The URL-encoded URN of the derivatives.".
但结果总是消息 "The requested derivative is not belongs to the design data."。
所以怎么了?文档还是我?
此致,
迈克尔
根据 GET :urn/manifest/:derivativeurn, the derivativeurn
should be escaped into a URL safe form since there are some reserved and unsafe keywords ( i.e. :
, .
, ?
and =
) in this parameter. They will invalid your request to the Forge service. (Ref)
的文档
您的档案盒是:
urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj
要下载此文件,您必须将其转换为这种形式:urn%3Aadsk.viewing%3Afs.file%3AdXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA%2Foutput%2Ffiles%2F6f7db9b2-925f-44b3-92e8-a5aeeb3954d2%2FSt%C3%A4nder_Y_Oben%20v1.obj
在JavaScript中,encodeURIComponent()
(Ref)函数可以帮你做这个转换。这是给您的示例:
encodeURIComponent('urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj')
如果您使用 C# 编写代码,Uri.EscapeDataString()
(Ref) 可以帮助您实现相同的目标。
我不知道如何从 Forge 下载创建的衍生产品。
这是我从 "GET :urn/manifest" 请求中得到的:
{
"type": "manifest",
"hasThumbnail": "false",
"status": "success",
"progress": "complete",
"region": "US",
"urn": "dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA",
"version": "1.0",
"derivatives": [
{
"name": "Ständer_Y_Oben v1.f3d",
"hasThumbnail": "false",
"status": "success",
"progress": "complete",
"outputType": "obj",
"children": [
{
"guid": "4064073b-a56c-4007-8b87-3cf87c821361",
"type": "resource",
"role": "obj",
"status": "success",
"progress": "complete",
"mime": "application/octet-stream",
"urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj"
}
]
}
]
那么如何形成有效的 "GET :urn/manifest/:derivativeurn" 请求呢?文档说 "urn should be The Base64 (URL Safe) encoded design URN" 和 "derivativeurn should be The URL-encoded URN of the derivatives.".
但结果总是消息 "The requested derivative is not belongs to the design data."。
所以怎么了?文档还是我?
此致, 迈克尔
根据 GET :urn/manifest/:derivativeurn, the derivativeurn
should be escaped into a URL safe form since there are some reserved and unsafe keywords ( i.e. :
, .
, ?
and =
) in this parameter. They will invalid your request to the Forge service. (Ref)
您的档案盒是:
urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj
要下载此文件,您必须将其转换为这种形式:urn%3Aadsk.viewing%3Afs.file%3AdXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA%2Foutput%2Ffiles%2F6f7db9b2-925f-44b3-92e8-a5aeeb3954d2%2FSt%C3%A4nder_Y_Oben%20v1.obj
在JavaScript中,encodeURIComponent()
(Ref)函数可以帮你做这个转换。这是给您的示例:
encodeURIComponent('urn:adsk.viewing:fs.file:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZGVyaXZhdGV0bXAvU3QlQzMlQTRuZGVyX1lfT2JlbiUyMHYxLmYzZA/output/files/6f7db9b2-925f-44b3-92e8-a5aeeb3954d2/Ständer_Y_Oben v1.obj')
如果您使用 C# 编写代码,Uri.EscapeDataString()
(Ref) 可以帮助您实现相同的目标。