2017-09-04 12 views
1

nodejsを介してAPIのbinaryMediaTypes ['image/jpg'、 'text/html']を設定したい場合使用する適切なAPIは何ですか?以下のように動作していないようです。javsript SDKを使用してaws apigateway binaryMediaTypesを更新する

const config = JSON.stringify({ 
      "swagger": "2.0", 
      "info": { 
       "title": this.apiName 
      }, 
      "x-amazon-apigateway-binary-media-types": [ 'image/jpg', 'text/html' ] 
     }); 
     return new Promise((resolve, reject) => { 
      var params = { 
       restApiId: apiId, /* required */ 
       mode: 'merge', 
       body: config 
      }; 
      this.apiGatewaySDK.putRestApi(params, (err, data) => { 
       if (err) { 
        reject(err); 
       } 
       else { 
        resolve('binary set successfully'); 
       } 
      }); 
     }); 

答えて

0

最終的にupdateRestApi()を使用して終了します。 PlsはpatchOpertionsの部分に注意します、それは非常に直感的ではありません(sth aws sdkは改善することができますか?)

 let patchOperationsArray = []; 
     patchOperationsArray.push(
      { 
       op: 'add', 
       path: '/binaryMediaTypes/'+ e.replace("/", "~1") 
      } 
     ); 

     const params = { 
      restApiId: apiId, /* required */ 
      patchOperations:patchOperationsArray 
     }; 
     this.apiGatewaySDK.updateRestApi(params, (err, data) => { 
      if (err) { 
       reject(err); 
      } 
      else { 
       this.serverless.cli.log('API Gateway Configuring: Binary support are set correctly'); 
       resolve('binary set successfully'); 
      } 
     }); 
関連する問題