Autodesk Forge API で自分のファイルをフォトシーンに受け入れるのに問題があります。API 呼び出しから得られるエラー メッセージは次のとおりです。
{"developerMessage":"Access token provided is invalid or expired.", "moreInfo": "https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/error_handling/", "errorCode": ""}
このエラーは、同じ forge_access_token を使用してこれらのファイルを追加するフォトシーンを作成した直後に発生するため、混乱します。
そして、""errorCode": ""セクションには、何が問題なのかについての手がかりはありません。
私のプログラムのコードシーケンスは次のとおりです。
- forge_access_token を取得します。
- フォトシーンを作成し、
- フォトシーンに画像ファイルを追加します。
1. 次のコードで access_token を取得できました。
# Request for a 2-legged OAuth access token
json=`curl -s $FORGE_URL/authentication/v1/authenticate \
-d client_id=$CLIENT_ID\
-d client_secret=$CLIENT_SECRET\
-d grant_type=client_credentials\
-d scope=data:read+data:write
`
forge_access_token=`echo $json | jq -r .access_token`
echo "forge_access_token: $forge_access_token"
2. 次に、返されたforge_access_tokenを次のコードで使用して、新しい photosceneid を正常に要求します。
json=`curl -s $FORGE_URL/photo-to-3d/v1/photoscene \
-X 'POST' \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $forge_access_token" \
-d "scenename=$scan_id" \
-d 'scenetype=object' \
-d 'format=obj,rcm'
`
# echo $json
photosceneid=`echo $json | jq -r .Photoscene.photosceneid`
echo "Created Photoscene: $photosceneid"
3. しかし、この新しいフォトシーンに画像ファイルを追加するために次のコードを呼び出すと、それらの追加に失敗します。
JPG_FILES=$scan_dir/*.jpg
i=0
for image_file in $JPG_FILES
do
file_name=`basename $image_file`
json=`curl -s $FORGE_URL/photo-to-3d/v1/file \
-H 'Authorization: Bearer $forge_access_token' \
-d 'photosceneid=$photosceneid' \
-d 'type=image' \
-d 'file[$i]=$image_file'
`
i=$((i+1))
私はこのエラーメッセージで失敗しています:
{"developerMessage":"Access token provided is invalid or expired.", "moreInfo": "https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/error_handling/", "errorCode": ""}
他の Forge Reality Capture API ユーザーでこれを見た人はいますか? どのように解決しましたか?