1

SDK php 2 を使用して、DynamoDB からバイナリ データを読み書きしようとしています。

データをテーブルに書き込むことはできますが、それを読み取ると、元のバイナリ形式にキャストする方法が異なる形式になります。

$put_response = $dynamodb->putItem(array(
    'TableName' => 'TableName', 
    'Item' => array(
    'Id' => array( 'S' => 'werwer' ), // Primary Key
    'IV' => array( 'B' => openssl_random_pseudo_bytes(50)),
    'Password' => array( 'B' => $encrypt->EncryptER("asdasd") )
    )
    ));

IV 属性またはパスワードを読み取ると、別の値が得られます。キャストを行う必要があるか、または文字列をバイナリに変換する関数があるかどうか。

Dynamo に値を格納する前に echo を実行すると、次のようになります。LX�x��ʝ�t]�>0

これは、Dynamo GdNMWLt4nZrKnc50XdE+MA== から変数を読み取った後の変数のエコーです。

ありがとう

4

1 に答える 1

0

主なことは、生の形式で提供した場合でも、バイナリ データが DynamoDB の base64 に格納されることです。生のバイナリを取り戻すには、使用する必要がありました

base64_decode($response->getPath('Item/IV/B'))
于 2013-02-05T02:35:41.923 に答える