使用生成的共享访问签名将带有REST API的表实体插入Azure表存储

时间:2013-02-18 18:05:44

标签: azure-table-storage

我正在尝试使用已使用安全Web服务生成的共享访问密钥将项目插入Azure表存储(以保持密钥安全)。我的问题是我收到400(错误请求)错误。请有人能告诉我我做错了什么吗?

我从服务中返回带有SaS的Uri,例如

https://myaccount.table.core.windows.net/l4nlog?sv=2012-02-12&se=2013-02-18T17:42:58Z&tn=L4NLog&sp=a&sig=rGImh0XZ8KcbMI+k1JuNvGGfq13UioYaQFXxg+M1an0=

然后我以Microsoft网站上指定的格式将表的信息添加到请求流中(除了Atom命名空间的属性定义为xmlns:a =“http://www.w3.org/ 2005 /原子“):

http://msdn.microsoft.com/en-us/library/windowsazure/dd894033.aspx

我还补充说: request.Method =“POST”; request.ContentType =“application / atom + xml” x-ms-date采用RFS1123格式

但是,我没有设置授权标题(这可能是我的垮台),因为我认为SaS应该为我做这个工作。

所以,任何指针都会非常感激......!

如果我错过了任何信息,请原谅我......

史蒂夫

1 个答案:

答案 0 :(得分:0)

这是一个难题。此错误表示您的请求中存在错误。我建议尝试以下方法:

1-)验证SaaS服务是否指向正确版本的Storage Service API(1.6,1.7,1.8或任何其他)

2-)验证Azure表存储的请求限制

3-)是的,您需要验证请求的身份验证,(但我认为这不是问题)