autodesk-forge
-apiを使用してアプリケーションを構築しようとしています。まず、オートデスの設定でアプリを作成し、API呼び出しを行うために必要な「ClientID」と「Client Secret」を受け取った。Autodesk Forge APIのcreateBucketが機能しない
createBucket
-APIコール(ドキュメントセットhere)を使用しようとすると、私は答えがbad request 400
で、理由はわかりません。ここ
は私のAPI呼び出しです:
let oAuth2TwoLegged = new ForgeSDK.AuthClientTwoLegged(clientId,
clientSecret, [
'data:read',
'data:write',
'bucket:create',
'bucket:read',
'data:write',
'data:read',
'viewables:read'
], autoRefresh);
oAuth2TwoLegged.authenticate().then(function(credentials){
var HubsApi = new ForgeSDK.HubsApi(); //Hubs Client
var BucketsApi = new ForgeSDK.BucketsApi(); //Buckets Client
BucketsApi.createBucket({bucketKey :"Test", policyKey: "transient"},{}, oAuth2TwoLegged, credentials).then((response) => {
console.log(' new BUCKET: ', response)
}).catch((err) => {
console.log('ERROR BLA: ', err)
});
}).catch((err) => {
console.log('oauth error: ', err)
})
誰も私が間違っているかもしれないものの提案を持っていますか?私は別のコールを使用する場合
、たとえばこのために:
BucketsApi.getBuckets({}, oAuth2TwoLegged, credentials).then(function(response){
console.log('buckets: ', response.body);
}, function(err){
console.error(err);
});
それが動作する...
EDIT
私は次のような場合:
BucketsApi.createBucket(xyda_select_rtl, {'bucketKey' :'xyda_select_rtl',
'policyKey': 'transient'}, oAuth2TwoLegged, credentials).then((response) => {
console.log(' new BUCKET: ', response)
}).catch((err) => {
console.log('ERROR BLA: ', err)
});
私はxyda_select_rtl
が定義されていません!
私が追加:
var xyda_select_rtl;
私はエラーMissing the required parameter 'postBuckets' when calling createBucket
Ehhm ....ええ得る: -/
うーんをこれは私に "テストは定義されていません" – Steve
"テストは定義されていませんでした"グローバルな手段であるForge OSSでは、サーバー側に「Test」という名前のバケットがもう1つ存在しません。あなたのアプリでそのバケツが見えなかった場合、それは他の開発者によってトークンになっている可能性があります。 Get '/ buckets/Test'で確認できます。 –
ok?しかし、それは非常に柔軟性に欠けるでしょう、他の人がバケツと呼んでいるものをどのように知ることができますか?上記の私の編集した質問をチェックしてください。 – Steve