Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Azure存储表插入失败,错误为“0”;其中一个请求输入无效";_C#_Azure_Azure Table Storage - Fatal编程技术网

C# Azure存储表插入失败,错误为“0”;其中一个请求输入无效";

C# Azure存储表插入失败,错误为“0”;其中一个请求输入无效";,c#,azure,azure-table-storage,C#,Azure,Azure Table Storage,我正在尝试使用javascript在Azure存储表中插入一个哑实体。我启用了CORS并成功地对我的请求进行了身份验证,但我的死简单请求失败,其中一个请求输入无效。message 以下是有关请求的更多详细信息: Accept:application/json;odata=nometadata Accept-Encoding:gzip, deflate Accept-Language:en-US,en;q=0.8 Authorization:SharedKey <account>:&l

我正在尝试使用javascript在Azure存储表中插入一个哑实体。我启用了CORS并成功地对我的请求进行了身份验证,但我的死简单请求失败,其中一个请求输入无效。message

以下是有关请求的更多详细信息:

Accept:application/json;odata=nometadata
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Authorization:SharedKey <account>:<secret>
Cache-Control:no-cache
Connection:keep-alive
Content-Length:70
Content-type:application/json
DataServiceVersion:3.0;NetFx
Host:<account>.table.core.windows.net
If-Match:*
MaxDataServiceVersion:3.0;NetFx
Origin:http://localhost:6091
Referer:http://localhost:6091/
x-ms-date:Fri, 08 Jan 2016 06:23:29 GMT
x-ms-version:2013-08-15
有一个机构:

{“odata.error”:{“code”:“InvalidInput”,“message”:{“lang”:“en-US”,“value”:“One” 请求输入的类型不正确 有效。\n请求ID:4994f291-0002-004d-1cdd-49d7ff000000\n时间:2016-01-08T06:23:30.4716844Z“}”


我看到有人抱怨这个非描述性的错误消息。但是,我非常确定这个请求负载是正常的
RowKey
PartitionKey
没有特殊字符,
Message
字段不必提供其
odata
类型(但相信我,我也尝试过)。我也尝试了作为示例提供的有效负载,但问题仍然存在。

如果您在链接到的文档中检查示例JSON主体以获取插入实体,您会注意到键应该在引号中。请尝试发送如下所示的正文:


{“Message”:“test”,“RowKey”:“myrowkey”,“PartitionKey”:“mypartitionkey”}

我通过试错法找到了解决方案。请求头
如果匹配:
就是问题所在。我删除了标题,它开始工作


Azure显然需要更明确地了解其文档和错误消息。

我们在应用程序中使用JavaScript/AJAX/CORS广泛地管理表数据。我刚刚用你的请求负载在那里试过,效果很好。看起来是另一个问题。您是否可以共享一些代码?如果可能,请准确地共享您尝试上载的json正文。啊,很好,它实际上也为我做了,但考虑到它与我仍然认为我建议的文档不匹配,以防出现任何其他偶然的差异。此外,PartitionKey和RowKey值需要是字符串。
Access-Control-Allow-Origin:*
Access-Control-Expose-Headers:x-ms-request-id,x-ms-version
Content-Type:application/json;odata=nometadata;streaming=true;charset=utf-8
Date:Fri, 08 Jan 2016 06:23:30 GMT
Server:Windows-Azure-Table/1.0 Microsoft-HTTPAPI/2.0
Transfer-Encoding:chunked
X-Content-Type-Options:nosniff
x-ms-request-id:4994f291-0002-004d-1cdd-49d7ff000000
x-ms-version:2013-08-15