2017-03-03 9 views
2

Amazon SNS serviceを使用します。また、http rest to SNSトピックを購読して通知を受け取ることができます。AWS SNSをローカルでテストする方法は?

ただし、私のアプリケーションのURLはlocalhostです。アプリケーションの動作をローカルでテストすることは不可能です。

ngrokサーバの使用に関する記事があります。ローカルの代わりにパブリックIPを使用しています。

しかし、それは私にとっては良い解決策ではないようです。

SNSサブスクライバをローカルに使用するにはどうすればよいですか?

答えて

0

は、s12v/snsとして、GitHubの中に偽のSNSの実装の1つを見てみましょう:

Fake Amazon Simple Notification Service (SNS) for testing. Supports:

  • Create/List/Delete topics
  • Subscribe endpoint
  • Publish message
  • Subscription persistence
  • Integrations with (Fake-)SQS, File, HTTP, RabbitMQ, Slack
+0

最新のSDKで動作しないようです。 AwsClientBuilder.EndpointConfiguration endpointConfiguration = new AwsClientBuilder.EndpointConfiguration( "localhost:9911"、 "us-east-1"); AmazonSNS amazonSNSClient = AmazonSNSClientBuilder.standard() .withEndpointConfiguration(endpointConfiguration) .build(); System.out.println(amazonSNSClient.listTopics()); シンプルなコードを実行すると、エラーが発生しました: スレッド "main"の例外SdkClientException:HTTPリクエストを実行できません:認識できないSSLメッセージ、プレーンテキスト接続? – Kiryl

2

あなたはまた、公にあなたのローカルホストを公開するngrokを使用することができます。

これは、サブドメインを動的に作成し、必要なポート上のすべての要求をマシンにトンネリングする方法です。

このシナリオでは、localhost:8080でnginxを実行しています。 端末を開いてngrok 8080を実行すると、端末セッションに参加し、「as78fh.ngrok.com」のような私のパブリックURLを記録します。

別のコンピュータに接続している場合は、ブラウザを開いてas78fh.ngrok.com/registerに移動します。要求は自分のlocalhost:8080/registerからインターネットにトンネル経由で配信されます。

私は電子メールウェブフック、github統合、そしてもちろん、アマゾンsnsのようなトリッキーな開発のためにそれを使用します。

関連する問題