2016-06-27 14 views
2

APIゲートウェイを使用してWebサービスを統合する場合は、thisを参照してすべての手順を慎重に実行しますが、手順7からAWS APIゲートウェイを使用してパラメータを渡す方法はありません。これを解決するのに役立ちますか?私は何日もそれにこだわりました。これを解決するのを手伝ってください。APIゲートウェイを使用してWebサービスを呼び出す方法

+1

あなたはApiClientFactory.endpoint()コールについて話していますか? 「http:// localhost」をAPIのエンドポイントURI「https:// .execute-api。 .amazonaws.com」に置き換えてみましたか? –

+1

あなたのコードとあなたのAPI定義のすばらしいエクスポートを投稿できますか?また、あなたのコードとAPIのIDと地域を私に教えてください。 –

+0

ええ、私はApiClientFactory.endpoint()について、私は "localhost"を私のURIに置き換えましたが、私はアクセスキー、シークレットアクセスキー、および地域をプログラム的に渡す方法は知らないです。 –

答えて

0

APIメソッドの認証がAWS_IAMに設定されている場合は、アクセスキーとシークレットアクセスキーを使用する必要があります。

Androidアプリケーション内で認証情報としてアクセスキーとシークレットアクセスキーを使用することは推奨されません。これは、アプリと一緒にクレデンシャルを配布する必要があるため、デプロイアプリバイナリからクレデンシャルを簡単に抽出できます。悪意のある目的のためにそれらを使用する。

多くのアプリケーション開発者は、アプリケーションをCognito IDプール経由で認証することを好みます。これはstep 8 hereに記載されています。

これが機能しない場合は、AWSCredentialsProviderインターフェイスを実装するクラスを使用できるはずです。これらはdocumented hereです。あなたはそうのような、credentialsProviderメソッドを使用してApiClientFactoryインスタンスで資格情報プロバイダを設定します。

ApiClientFactory factory = new ApiClientFactory() 
    .endpoint("https://localhost/") 
    .credentialsProvider(credentialsProvider); 

を繰り返しますが、私はあなたがあなたのアプリケーションを使用してアクセスキーとシークレットアクセスキーを配布してはならないことを強調したいです。

+0

私はそれをやった!しかしステップ7://あなたのparentPath1Getメソッドを呼び出します。 OriginalModel出力= client.parentPath1Get(param1、body); parentPath1Get(param1、body)メソッドとparam、body –

+0

paramとbodyは、メソッドに渡す必要があるものの単なるプレースホルダー/例です。 APIは、APIで定義されているものと一致するメソッドパラメータで生成されます。 –

関連する問題