2

SO全体とAmazonのドキュメントも調べましたが、iOS SDK、特にSwiftを使用してプットリクエストを作成する方法に関する確かなドキュメントは見つかりませんでした。

最初に AWSDynamoDBClient ( https://aws.amazon.com/articles/7439603059327617 ) をインスタンス化する必要があると思いますが、xcode で作業しているときにそれがタイプとして表示されません。

この苦労の末、正直なところ、コードは 2 行しかありません。

var myDynamoDBPutRequest:AWSDynamoDBPutRequest = AWSDynamoDBPutRequest()
    myDynamoDBPutRequest.item = ["fbid": "test"]

実行方法がわかりません。とにかく、リクエストが適切に設定されているかどうか疑問です。PutItemInputs も調べましたが、putRequest.item とどう違うのかわかりません。誰かが私を正しい方向に向けることができれば、私は喜んで自分で調査します-良いドキュメントを探す場所が不足しています:/

編集:

私は少し進歩しましたが、 put item input を適切に作成する方法がまだわかりません。ここに私が今持っているコードがあります:

 var myPutItemInput:AWSDynamoDBPutItemInput = AWSDynamoDBPutItemInput()
    myPutItemInput.tableName = "mytable"

    var myDynamoDB = AWSDynamoDB.defaultDynamoDB()

    myDynamoDB.putItem(myPutItemInput).continueWithBlock { (task:BFTask!) -> AnyObject! in
        if(task.result != nil){
            let myPutOutput = task.result as AWSDynamoDBPutItemOutput

            println(task.result)

        }else{
            println("task.result was nil for put item request")
        }

        return nil
    }//end put item task

今、少なくともリクエストを実行する方法を理解しましたが、結果は毎回ゼロです。

4

1 に答える 1

5

次に例を示し- putItemます。

let dynamoDB = AWSDynamoDB.defaultDynamoDB()

let putItemInput = AWSDynamoDBPutItemInput()
putItemInput.tableName = "testTableName"
let hashValue = AWSDynamoDBAttributeValue()
hashValue.S = "testPutItem"
let stringValue = AWSDynamoDBAttributeValue()
stringValue.S = "stringValue";
putItemInput.item = [
    "hashKey" : hashValue,
    "stringKey" : stringValue
]

dynamoDB.putItem(putItemInput).continueWithBlock { (task:AWSTask?) -> AnyObject? in
    if(task.error != nil) {
        println(task.error)
    }

    if (task.result != nil) {
        let putItemOutput = task.result as AWSDynamoDBPutItemOutput
        println(putItemOutput)
    }

    return nil
}

Objective-C ではありますが、統合テストを見ると、AWS Mobile SDK for iOS v2 で Amazon DynamoDB を使用する方法を理解するのに役立つ場合があります。

于 2014-12-12T19:45:33.153 に答える