我正在尝试访问一个简单的AWS IOT REST服务,但我还没有成功.这就是我做的.
试图"获取"端点,这就是我得到的 -
{
"message": "Credential should be scoped to correct service. ",
"traceId": "be056198-d202-455f-ab85-805defd1260d"
}
我认为邮递员有问题,所以我尝试使用连接到S3的aws-sdk-sample示例并将其更改为连接到IOT URL.这是我的程序片段(Java)
String awsAccessKey = "fasfasfasdfsdafs";
String awsSecretKey = "asdfasdfasfasdfasdfasdf/asdfsdafsd/fsdafasdf";
URL endpointUrl = null;
String regionName = "us-east-1";
try {
endpointUrl = new URL("https://dasfsdfasdf.iot.us-east-1.amazonaws.com/things/SOMETHING/shadow");
}catch (Exception e){
e.printStackTrace();
}
Map<String, String> headers = new HashMap<String, String>();
headers.put("x-amz-content-sha256", AWSSignerBase.EMPTY_BODY_SHA256);
AWSSignerForAuthorizationHeader signer = new AWSSignerForAuthorizationHeader(
endpointUrl, "GET", "iot", regionName);
String authorization = signer.computeSignature(headers,
null, // no query parameters …
Run Code Online (Sandbox Code Playgroud)我们正在为我们的仪表板应用程序设计一个大数据解决方案,并认真考虑Glue用于我们的初始ETL.目前Glue支持JDBC和S3作为目标,但我们的下游服务和组件将使用dynamodb更好地工作.我们想知道最终将记录从Glue移动到Dynamo的最佳方法是什么.
我们应该首先写入S3然后运行lambdas将数据插入Dynamo吗?这是最好的做法吗?或者我们是否应该为Dynamodb使用第三方JDBC包装器并使用Glue直接写入Dynamo(不确定这是否可行,听起来有点可怕)或者我们应该做其他事情吗?
任何帮助是极大的赞赏.谢谢!