0

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": ""セクションには、何が問題なのかについての手がかりはありません。

私のプログラムのコードシーケンスは次のとおりです。

  1. forge_access_token を取得します。
  2. フォトシーンを作成し、
  3. フォトシーンに画像ファイルを追加します。

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 ユーザーでこれを見た人はいますか? どのように解決しましたか?

4

2 に答える 2

0

すべての JPEG ファイルをアップロードするのにどのくらいの時間がかかりますか? 通常、アクセス トークンは 1 時間で期限切れになるように設定されているため、画像が多すぎたり大きすぎたりすると、すべてがアップロードされる前にトークンが期限切れになる可能性があります。

また、フラグを使用curlして、-v送信されている正確な要求ヘッダーも表示されるようにすることを検討してください。これにより、$forge_access_token補間で異常が発生していないことを確認できます。

上記のいずれの問題でもない場合は、お手数ですが、forge (dot) help (at) autodesk (dot) comお客様の状況をできるだけ詳しくお知らせください。エンジニアリング チームに伝えます。

于 2020-06-17T08:54:56.037 に答える