在我开始之前,我会问的问题可能会被认为是“新手”,但是由于时间不够,我需要帮助,而且无法通过提供的大多数文档找到简单的答案。 我成功托管了匿名令牌自动售货机。尝试成功运行AWSiOSDemoTVM iOS应用程序。
现在我正在尝试编写一个小应用程序,它会将少量记录插入到dynamodb
测试表中。不幸的是,提供的AWSiOSDemoTVM
没有展示任何动力学特征。我也试过其他的例子。但很难理解。
我有以下示例代码,如果我对凭据进行硬编码,效果很好。
任何人都可以提供示例代码来获取AnonymousTVM client
返回的凭据,以便我可以用此替换硬编码凭据。
AmazonCredentials *creds = [[AmazonCredentials alloc] initWithAccessKey:MY_ACCESS_KEY_ID withSecretKey:MY_SECRET_KEY];
AmazonDynamoDBClient *ddb = [[AmazonDynamoDBClient alloc] initWithCredentials:creds];
NSString *ddbendpoint = [AmazonEndpoints ddbEndpoint:US_WEST_2];
DynamoDBPutItemRequest *putItemRequest = [DynamoDBPutItemRequest new];
[putItemRequest setRequestEndpoint:ddbendpoint];
putItemRequest.tableName = @"UserTable";
DynamoDBAttributeValue *value = [[DynamoDBAttributeValue alloc] initWithN:@"1006"];
[putItemRequest.item setValue:value forKey:@"UserId"];
value = [[DynamoDBAttributeValue alloc] initWithS:@"Recod-No-6"];
[putItemRequest.item setValue:value forKey:@"RecordId"];
value = [DynamoDBAttributeValue new];
[value addSS:@"Green"];
[value addSS:@"Red"];
[value addSS:@"Black"];
[putItemRequest.item setValue:value forKey:@"Colors"];
@try {
DynamoDBPutItemResponse *putItemResponse = [ddb putItem:putItemRequest];
NSLog(@"Consumed write capacity for putItem: %d", [putItemResponse.consumedCapacity.capacityUnits integerValue]);
NSLog(@"putItem httpStatusCode: %d",putItemResponse.httpStatusCode);
}
@catch (DynamoDBResourceNotFoundException *exception)
{
NSLog(@"%@",exception.errorCode);
}
更新: -
我找到了以下获取凭据的方法。 这是对的吗?
AmazonCredentials *credentials = [AmazonKeyChainWrapper getCredentialsFromKeyChain];
if (! credentials){
NSLog(@"-----> no credentials");
[AmazonClientManager validateCredentials];
credentials = [AmazonKeyChainWrapper getCredentialsFromKeyChain];
}
//NSLog(@" %@",credentials.access) ;
AmazonDynamoDBClient *ddb = [[AmazonDynamoDBClient alloc] initWithCredentials:credentials];
ddb.endpoint = [AmazonEndpoints ddbEndpoint:US_WEST_2];