当使用Autodesk Forge API时,可能会出现NETWORK_FILE_NOT_FOUND错误。这意味着API无法找到指定的文件。要解决此问题,您应该检查文件的位置和命名,并确保在API调用中正确指定了文件路径。以下是一个Python代码示例,演示如何上传文件到Forge并正确指定文件路径:
import requests
import json
import os
# 设置Forge API的访问令牌
ACCESS_TOKEN = ""
# 指定要上传的文件路径和名称
file_name = "example.dwg"
file_path = os.path.abspath(file_name)
file_url = "https://developer.api.autodesk.com/oss/v2/buckets//objects/" + file_name
# 将文件上传到Forge
headers = {
"Authorization": "Bearer " + ACCESS_TOKEN,
"Content-Type": "application/octet-stream",
"x-ms-blob-type": "BlockBlob"
}
with open(file_path, "rb") as f:
data = f.read()
response = requests.put(file_url, headers=headers, data=data)
# 检查上传是否成功
if response.status_code == 200:
print("File uploaded successfully!")
else:
print("Error uploading file:", response.content)
# 指定上传后的文件ID和名称
file_id = ""
file_name = "example.dwg"
# 指定要使用的Forge API endpoint
url = "https://developer.api.autodesk.com/modelderivative/v2/designdata/job"
# 指定要使用的转换类型
outputs = [
{
"type": "svf",
"views": ["2d", "3d"]
}
]
# 指定API调用中使用的参数
data = {
"input": {
"urn": "urn:adsk.objects:os.object:/" + file_name
},
"output": {
"formats": outputs
}
}
# 执行API调用
headers = {
"Authorization": "Bearer " + ACCESS_TOKEN,
"Content-Type":