我一直在努力通過iOS應用程序連接到AWS DynamoDB。我對DynamoDB缺乏教程/文檔感到沮喪(我想這還是相當新的)。但我一直試圖按照Amazon's User Preference Tutorial我試圖連接到數據庫並閱讀或寫東西,但我得到一個異常拋出。iOS AWS DynamoDB無法運行請求
AmazonCredentials *creds;
creds = [creds initWithAccessKey:MY_ACCESS_KEY withSecretKey:MY_SECRET_KEY];
AmazonDynamoDBClient *ddb = [[AmazonDynamoDBClient alloc] initWithCredentials:creds];
DynamoDBGetItemRequest *request = [[DynamoDBGetItemRequest alloc]
initWithTableName:@"Users" andKey:[[DynamoDBKey alloc] initWithHashKeyElement:
[[DynamoDBAttributeValue alloc] initWithS:@"Chase"]]];
DynamoDBGetItemResponse *response = [ddb getItem:request]; //THROWING THE EXCEPTION HERE!
NSMutableDictionary *user = response.item;
NSLog(@"%@",user);
輸出寫着: 終止應用程序由於未捕獲的異常「AmazonServiceException」,原因:「」
,我從什麼教程做的是設置我的用戶的方式唯一改變的憑據,並拋出異常的行,本教程有:
DynamoDBCreateTableResponse *response = [[AmazonClientManager ddb] getItem:request];
我找不到任何AmazonClientManager類的任意位置,但AmazonDynamoDBClient類似乎有同樣的方法,所以我假設它應該工作(這個可能很可能是破壞我的代碼的假設)。我不知道亞馬遜是否仍然支持該類,因爲我無法在任何文檔中找到它。
另外,在我大吼大叫之前,我知道我不應該在應用程序中發放我自己的憑據。我稍後會改變這一點。我現在只想達到理智狀態。
它工作得很好。那麼爲什麼不聲明指針然後初始化它的工作? –
你也可以在兩行中做到這一點:'AmazonCredentials * creds; creds = [[AmazonCredentials alloc] initWithAccessKey:MY_ACCESS_KEY withSecretKey:MY_SECRET_KEY];',但仍需要調用'alloc',否則憑證對象將不會分配到內存中。 –
哦,在這個問題得到解答的時候,我在iOS開發世界裏有多年輕。 –