【发布时间】:2014-12-18 21:12:47
【问题描述】:
hash 和 range 都指定了,但它认为其中一个是空的?还是说其他属性?
返回的task.result()是nil,task.error()说:
“错误域=com.amazonaws.AWSDynamoDBErrorDomain 代码=0”提供 AttributeValue 为空,必须恰好包含受支持的一项 数据类型”用户信息=0x7ff3c0e21d40 {NSLocalizedDescription=提供 AttributeValue 为空,必须恰好包含受支持的一项 数据类型}"
我确信哈希和范围名称是正确的,表名也是正确的。
用 Swift 编写,这是我的代码:
var venueIdAttribute = AWSDynamoDBAttributeValue()
venueIdAttribute.N = "2164156"
var venueIdCondition = AWSDynamoDBCondition()
venueIdCondition.comparisonOperator = .EQ // Hash Key must always be Equals
venueIdCondition.attributeValueList = [venueIdAttribute]
var startDateAttribute = AWSDynamoDBAttributeValue()
var startString = String(format:"%1.0f", lastSyncDate.timeIntervalSince1970 * 1000)
startDateAttribute.N = String(format:"%1.0f", lastSyncDate.timeIntervalSince1970 * 1000)
var dateCondition = AWSDynamoDBCondition()
dateCondition.comparisonOperator = .GT
dateCondition.attributeValueList = [startDateAttribute];
var keysArray : NSArray = [["venueId" : venueIdCondition, "dateInterval" : dateCondition]]
var keysAndAttributes : AWSDynamoDBKeysAndAttributes = AWSDynamoDBKeysAndAttributes()
keysAndAttributes.keys = keysArray;
var requestMap : NSDictionary = ["myTableName":keysAndAttributes]
var request : AWSDynamoDBBatchGetItemInput = AWSDynamoDBBatchGetItemInput()
request.requestItems = requestMap
var response : BFTask = dynamoDB.batchGetItem(request) // This is synchronous
【问题讨论】:
标签: ios swift amazon-web-services amazon-dynamodb