【问题标题】:Amazon SimpleDB PuttAttributesAmazon SimpleDB PuttAttributes
【发布时间】:2014-07-30 18:05:48
【问题描述】:

我是 PHP 和 Amazon SimpleDB 的新手。我想弄清楚如何更新 SimpleDB 中的值。我创建了一个返回值的签名,所以我相信这是有效的。当我尝试遵循 Amazon 的 PutAttribute 示例时,我的应用程序中断了。任何关于我可能做错的提示或想法将不胜感激。

$item_name = htmlspecialchars($_POST["item_name"]);
$timestamp = gmdate('c');
$secretkey = 'mysecretkey';
$accesskey = 'myaccesskey';

$message = "
https://sdb.amazonaws.com/
?Action=PutAttributes
&Attribute.1.Name=body_type
&Attribute.1.Value=02
&Attribute.1.Replace=true
&AWSAccessKeyId=[my access key]
&DomainName=FILE_LOG_DEV
&ItemName={$item_name}
&SignatureVersion=2
&SignatureMethod=HmacSHA256
&Timestamp={$timestamp}
&Version=2009-04-15
";


$signature = base64_encode(hash_hmac('sha1', $message, $secretkey, true));

https://sdb.amazonaws.com/
?Action=PutAttributes
&Attribute.1.Name=body_type
&Attribute.1.Value=02
&Attribute.1.Replace=true
&AWSAccessKeyId=[my access key]
&DomainName=FILE_LOG_DEV
&ItemName=$item_name
&SignatureVersion=2
&SignatureMethod=HmacSHA1
&Timestamp=$timestamp
&Version=2009-04-15
&Signature=$signature

【问题讨论】:

    标签: php amazon-web-services amazon-simpledb


    【解决方案1】:

    您可以使用AWS PHP SDK (link),这将帮助您以轻松友好的方式与Amazon SimpleDB Database Service 互动。 AWS PHP SDK 将在内部管理您创建的 signaturetime stamp。所以你只需要关注parameters 传递给你的方法和result 你从那个方法中得到什么。看看example。在这里它将把array 当作argument 并返回a response Model object

    【讨论】:

      猜你喜欢
      • 2011-03-20
      • 1970-01-01
      • 1970-01-01
      • 2014-09-23
      • 1970-01-01
      • 2011-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多