gpt4 book ai didi

ios - 为什么我的 AmazonCredentials 对象无效?

转载 作者:行者123 更新时间:2023-11-28 22:41:44 24 4
gpt4 key购买 nike

我正在测试将核心数据支持到 DynamoDB 上,并且我已经在我的应用程序委托(delegate)上实现了 AWSPersistenceDynamoDBIncrementalStoreDelegate,相关的 credentials 方法也是这样实现的:

- (AmazonCredentials *)credentials
{
if(credentials==nil) {
credentials = [[AmazonCredentials alloc] initWithAccessKey:@"ACCESS_KEY" withSecretKey:@"SECRET_KEY"];
}
return credentials;
}

显然适本地替换了我的真实安全凭证(这不是它在生产中的实现方式,但我不想为我正在做的原型(prototype)制作设置 TVM)。

但是,当我尝试创建一个 Entity 时:

Track *track = (Track*)[NSEntityDescription insertNewObjectForEntityForName:@"Track" inManagedObjectContext:appDelegate.managedObjectContext];

我收到以下错误:

error: Error Domain=com.amazonaws.coredata.AWSPersistenceDynamoDBClientErrorDomain Code=-1 "The operation couldn’t be completed. (com.amazonaws.coredata.AWSPersistenceDynamoDBClientErrorDomain error -1.)" UserInfo=0xa5363d0 {message=The protocol - (AmazonCredentials *)credentials didn't return a valid AmazonCredentials object.}

我可以看到 AmazonCredentials 对象已实例化并具有正确的详细信息,我可以使用相同的凭据建立 AmazonS3Client session 并从存储桶下载文件,所以它们绝对有效。

有没有人看到这个/知道问题出在哪里?

最佳答案

好的,看Github上的代码https://github.com/aws/aws-sdk-ios/blob/master/src-persistence/AWSPersistenceDynamoDBIncrementalStore.m它表明您必须使用包含安全 token 的三个 arg 构造函数来使用 DynamoDB 来支持核心数据,如果在文档中提到这一点将会很有用,但无论如何,简而言之,您必须实现一个 TVM 才能做到这个。

关于ios - 为什么我的 AmazonCredentials 对象无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14338501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com