Forge-python脚本和终端命令的输出不一致

时间:2019-05-14 19:48:41

标签: python curl autodesk-forge

我正在按照this教程将.sldprt转换为.obj文件。我想使用python脚本完成此转换,并且我发现在线script完成了此转换,直到将文件上传到服务器并开始转换为止。在教程的第3步(验证作业是否完成)中,当我在命令行中键入以下命令时:

curl -X 'GET' -H 'Authorization: Bearer MYTOKEN' -v 'https://developer.api.autodesk.com/modelderivative/v2/designdata/MYURN/manifest'

我得到了适当的答复(见下图):

但是,通过Python脚本执行相同的操作会得到以下输出:

enter image description here

我的Python脚本如下:

### Verify if translation is complete and get the outURN
url = BASE_URL + 'modelderivative/v2/designdata/' + urn + '/manifest'
headers = {
    'Authorization' : 'Bearer ' + ACCESS_TOKEN
}
r = requests.get(url, headers=headers)
content = eval(r.content)
print("==========================================")
print(content)
print("==========================================")

我不知道两者之间的区别是什么(终端命令和python脚本给出的命令)。有人可以指出这里的问题是什么吗?

2 个答案:

答案 0 :(得分:1)

或者更好的是,监听extraction.finished事件,该事件通知翻译何时完成。

答案 1 :(得分:0)

我相信我必须在开始转换后暂停一段时间,以便云将.sldprt转换为.stl。解决方案是不断轮询“状态”键,并且仅在状态从“待定”变为“成功”时继续操作