我在使用JSON时发布到OData服务时收到'错误415:不支持的媒体类型'.
解决这个相当长的帖子的底部.
我可以使用JSON获取,但是一旦我尝试POST,我就会收到此错误.
我也可以使用XML进行GET/POST,但是我需要使用json.
我认为这个错误指的是我的标题中的错误,而不是我的请求体的json格式,下面也可能是不正确的,我尝试了一些导致相同错误的变体.
我一直在尝试使用Fiddler进行调试,结果如下.
JSON POST
请求
POST http://scdb38:8888/bi.test/applicationdata.svc/Sharks HTTP/1.1
User-Agent: Fiddler
Host: scdb38:8888
Content-Length: 91
Accept: application/json;odata=verbose;
Content-Type: application/json;
{
"d":[
{
"Name":"Great White ",
"Food":"Surfers"
}
]
}
Run Code Online (Sandbox Code Playgroud)
响应
HTTP/1.1 415 Unsupported Media Type
Cache-Control: private
Content-Length: 186
Content-Type: application/json;odata=verbose;charset=utf-8
Server: Microsoft-IIS/7.5
X-Content-Type-Options: nosniff
DataServiceVersion: 1.0;
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Wed, 16 Oct 2013 06:20:10 GMT
{"error":{"code":"1","message":{"lang":"en-AU","value":"<?xml version=\"1.0\" encoding=\"utf-16\"?><ExceptionInfo><Message>Unsupported media type requested.</Message></ExceptionInfo>"}}}
Run Code Online (Sandbox Code Playgroud)
JSON GET
请求标题
GET http://scdb38:8888/bi.test/applicationdata.svc/Sharks HTTP/1.1
User-Agent: Fiddler
Host: scdb38:8888
Content-Length: 0
Accept: …Run Code Online (Sandbox Code Playgroud)