文件上传“请求的资源不存在。” [autodesk-realitycapture]

时间:2019-10-16 22:27:14

标签: python-3.x 3d python-requests autodesk-forge autodesk-realitycapture

我的问题:

我正在编写一个 python3 程序,该程序使用 requests.post()调用 Autodesk Forge Reality Capture photo-to-3d API >:

https://developer.api.autodesk.com/photo-to-3d/v1/photoscene/photo-to-3d/v1/file

但是,我似乎无法获得接受我的图像文件的API,我将其作为可公开访问的URL传递。

您能告诉我应该怎么做吗?

我(非工作中的)PYTHON +要求输入代码:

forge_url = "https://developer.api.autodesk.com/photo-to-3d/v1/photoscene/photo-to-3d/v1/file"
headers = {'Content-type': 'application/x-www-form-urlencoded'}
image_url_list = { 'http://siptea.net/wp-content/uploads/2017/02/Persimmon-Ceramic-Teapot-Sip-Tea-4786.jpg' }

for file_url in image_url_list:
    file_parameters = {'photosceneid': photoscene_id, 'type': 'image', 'file[0]': file_url}
    print("file_parameters = ", file_parameters)
    response = requests.post(forge_url, auth=BearerAuth(access_token), headers=headers, data=file_parameters)
    json_object = response.json()
    json_string = json.dumps(json_object)
    print("json_string = ", json_string)

我的输出(显示错误响应):

  

file_parameters = {'photosceneid':'bkd3x48dSl5RpcwdfWYgVfGhD0cMQPgexpLkXLbPtUU','type':'image','file [0]':'http://siptea.net/wp-content/uploads/2017/02/Persimmon-Ceramic-Teapot-Sip-Tea-4786.jpg'}

     

json_string = {“ developerMessage”:“所请求的资源不存在。”,“ moreInfo”:“ https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/error_handling/”,“ errorCode”:“ org.mozilla.javascript.Undefined@0”}

以下BASH脚本应等效,但它可以工作,而python请求则不行。我需要在python代码中进行哪些更改?

我的(有效的)BASH +卷曲代码:

 file_url="http://siptea.net/wp-content/uploads/2017/02/Persimmon-Ceramic-Teapot-Sip-Tea-4786.jpg"
 json=`curl -s https://developer.api.autodesk.com/photo-to-3d/v1/file \
     -H "Authorization: Bearer $access_token" \
     -d "photosceneid=$photoscene_id" \
     -d 'type=image' \
     -d "file[0]=$file_url"

那么,使Python代码失败和Bash脚本正常工作的区别是什么?

1 个答案:

答案 0 :(得分:0)

发布照片的正确URL应该是:https://developer.api.autodesk.com/photo-to-3d/v1/file,而不是https://developer.api.autodesk.com/photo-to-3d/v1/photoscene/photo-to-3d/v1/file,因此会出现404错误。

查看详细信息here