我试图在JavaScript中使用Insert Entity API将一个哑实体插入到Azure存储表中。我启用了CORS和管理,以获得我的请求验证,但我死的简单请求与One of the request inputs is not valid.
消息Azure存储表插入失败,“其中一个请求输入无效”
这里失败是在要求更多的细节:
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
这里是请求负载:
{消息: “测试”,RowKey: “myrowkey”,PartitionKey: “mypartitionkey”}
这里是响应,瓦特HICH具有HTTP状态400:
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
与身体:
{ “odata.error”:{ “代码”: “InvalidInput”, “消息”:{ “郎”:” en-US“,”value“:”一个 的请求输入不是 有效。\ nRequestId:4994f291-0002-004d-1cdd-49d7ff000000 \ n时间:2016-01-08T06:23:30.4716844Z“}}}
我看到有人抱怨这个非描述性的错误信息。不过,我很确定这个请求的有效载荷是好的。 RowKey
和PartitionKey
没有特殊字符,并且Message
字段不必提供其odata
类型(但相信我,我也试过)。我也尝试过提供的有效负载,但问题仍然存在。
我们在应用程序中广泛使用JavaScript/AJAX/CORS来管理表格数据。我只是在你的请求有效负载中试过它,它工作得很好。看起来像一些其他问题。是否有可能分享一些代码? –
如果可能,请分享您尝试上传的json正文。 –