AWS SNSClient发布调用无法到达终结点 我试图用C++ SDK,向AWS SNSCLIONT发布一个主题的消息。
有人能帮我找到一种方法来找出我的方法有什么问题吗?我收到的错误消息只是说“无法到达端点” 我正试图找出我的请求挂起的地方——在我看来,可能是以下情况之一:AWS SNSClient发布调用无法到达终结点 我试图用C++ SDK,向AWS SNSCLIONT发布一个主题的消息。,c++,amazon-web-services,publish,amazon-sns,C++,Amazon Web Services,Publish,Amazon Sns,有人能帮我找到一种方法来找出我的方法有什么问题吗?我收到的错误消息只是说“无法到达端点” 我正试图找出我的请求挂起的地方——在我看来,可能是以下情况之一: C++应用程序正在运行的DOCKER容器是以某种方式阻塞请求(新到DOCKER) 客户端配置错误(地区、arn、信用错误?) 请求格式不正确(某些参数未设置?可能是消息类型?) 有人知道我如何调试我的请求并查看问题是什么吗 谢谢!我的代码如下所示(api初始化和关机被省略): Aws::SNS::SNSClient客户端(凭据、配置);
- C++应用程序正在运行的DOCKER容器是以某种方式阻塞请求(新到DOCKER)
- 客户端配置错误(地区、arn、信用错误?)
- 请求格式不正确(某些参数未设置?可能是消息类型?)
Aws::SNS::SNSClient客户端(凭据、配置);
Aws::SNS::Model::PublishRequest pubReq;
pubReq.SetTopicArn(“…”);
pubReq.SetMessage(“测试消息”);
pubOutput=client.Publish(pubReq);
如果(!pubOutput.IsSuccess()){
std::cout我猜在看不到代码的情况下,您没有指定正确的区域。如果您的代码挂起几秒钟,那么这很可能就是问题所在
在创建SNS客户端之前,添加一行如下代码:
config.region = "us-west-2";
要启用调试,请在Aws::InitAPI(选项)之前添加此行
用于日志记录的标题:
#include <aws/core/utils/logging/DefaultLogSystem.h>
#include <aws/core/utils/logging/AWSLogging.h>
#包括
#包括
然后您可以查看生成的日志文件。它将以“aws_sdk”开头
我使用Visual Studio,因此我更喜欢深入代码以找出错误所在。有时查看日志文件更简单。FWIW这似乎是一个错误,今天仍然存在。没有任何情况下代码会因为函数的参数有效但不正确而挂起。
options.loggingOptions.logLevel = Aws::Utils::Logging::LogLevel::Debug;
#include <aws/core/utils/logging/DefaultLogSystem.h>
#include <aws/core/utils/logging/AWSLogging.h>