我正在c#web-api中编写一个小组件,以向Amazon SNS发送通知。在不同的服务器环境(开发,测试,登台,生产)上,我的应用程序连接到不同的SNS主题,以及AWS上的不同帐户。我想要的是某种" ping"在部署我的应用程序时验证我是否与AWS和SNS主题有正确的连接(如果在AmazonSimpleNotificationServiceClient / SNS主题arn的配置/初始化中出现问题,则避免SDK中的异常)。
有没有办法在C#SDK中验证客户端和/或主题的状态?
我曾想过实施一个虚假的发布" ping-message"听众可以扔掉 - 但我想尽可能避免这种情况。
有人有任何建议吗?
答案 0 :(得分:0)
您只需向AWS发出请求并返回HttpStatusCode即可。我不知道SNS,但我使用过S3。如果我这样做,我会做这样的事情。
static void Main(string[] args)
{
string awsAccess = "";
string awsSecret = "";
string bucketName = "";
AmazonS3Client client = new AmazonS3Client(awsAccess, awsSecret, RegionEndpoint.USWest2);
var buckets = client.GetBucketLocation(bucketName);
string httpResponse = buckets.HttpStatusCode.ToString();
if (httpResponse == "OK")
{
Console.WriteLine("HttpStatus: Good");
}
else Console.WriteLine("Something went wrong");
Console.ReadKey();
}
希望这有帮助