Ios 直接从令牌自动售货机获取凭证
在我开始之前,我要问的问题可能被认为是“新手”,但是由于时间不够,我需要帮助,无法通过提供的大多数文档找到简单的答案。 我已成功托管匿名令牌自动售货机。已尝试成功运行AWSiOSDemoTVM iOS应用程序 现在我正在尝试编写一个小应用程序,它将向dynamodb测试表插入一些记录。不幸的是,提供的AWSiOSDemoTVM没有演示任何dynamodb特性。我也试过其他例子。但是很难理解 我有下面的示例代码,如果我硬编码凭证,它将非常有用 有人能给我提供示例代码来获取AnonymousTVM客户端返回的凭据,这样我就可以用这个替换硬编码的凭据了Ios 直接从令牌自动售货机获取凭证,ios,amazon-dynamodb,Ios,Amazon Dynamodb,在我开始之前,我要问的问题可能被认为是“新手”,但是由于时间不够,我需要帮助,无法通过提供的大多数文档找到简单的答案。 我已成功托管匿名令牌自动售货机。已尝试成功运行AWSiOSDemoTVM iOS应用程序 现在我正在尝试编写一个小应用程序,它将向dynamodb测试表插入一些记录。不幸的是,提供的AWSiOSDemoTVM没有演示任何dynamodb特性。我也试过其他例子。但是很难理解 我有下面的示例代码,如果我硬编码凭证,它将非常有用 有人能给我提供示例代码来获取AnonymousTVM客
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];