Dropbox 网络服务 API returns 内容必须 application/json
Dropbox web service API returns content must be application/json
我正在尝试从 Dropbox 收集一些数据,但发现该服务正在返回一条消息,指出请求的格式不正确。
我可以使用不需要 JSON 的调用从服务中成功检索数据,但是当我尝试进行包含 JSON 的调用时,服务回复它的格式不正确。
我在 HttpClient class 中使用 PostAsJsonAsync 方法。
response = await client.PostAsJsonAsync("/1/team/members/list", "{ \"limit\" : 100 }");
json = System.Web.Helpers.Json.Decode(await response.Content.ReadAsStringAsync());
服务响应:
error = "Content-Type must be \"application/json\". Got
application/json; charset=utf-8"
现在,您需要将 Content-Type
header 设置为 application/json
。我想我们将来可以放宽限制,所以 application/json; charset=utf-8
也可以。
Microsoft 论坛上有一个类似的问题(但没有有用的答案):http://forums.asp.net/t/1982431.aspx?How+to+remove+charset+utf8+from+Content+Type+header+generated+by+HttpClient+PostAsJsonAsync+。我建议只使用一种不同的方法,它允许您明确设置 Content-Type
header。
我正在尝试从 Dropbox 收集一些数据,但发现该服务正在返回一条消息,指出请求的格式不正确。
我可以使用不需要 JSON 的调用从服务中成功检索数据,但是当我尝试进行包含 JSON 的调用时,服务回复它的格式不正确。
我在 HttpClient class 中使用 PostAsJsonAsync 方法。
response = await client.PostAsJsonAsync("/1/team/members/list", "{ \"limit\" : 100 }");
json = System.Web.Helpers.Json.Decode(await response.Content.ReadAsStringAsync());
服务响应:
error = "Content-Type must be \"application/json\". Got application/json; charset=utf-8"
现在,您需要将 Content-Type
header 设置为 application/json
。我想我们将来可以放宽限制,所以 application/json; charset=utf-8
也可以。
Microsoft 论坛上有一个类似的问题(但没有有用的答案):http://forums.asp.net/t/1982431.aspx?How+to+remove+charset+utf8+from+Content+Type+header+generated+by+HttpClient+PostAsJsonAsync+。我建议只使用一种不同的方法,它允许您明确设置 Content-Type
header。