我正在使用此网址尝试删除文件:
https://apis.live.net/v5.0/file.12ea4b6cbf3ee803.12EA4B6CBF3EE803!151
我正在使用DELETE方法。
我从服务器获得的回报是:
{
"error": {
"code": "request_body_invalid_media_type",
"message": "The Content-Type header 'text/plain; charset=UTF-8' isn't expected for this HTTP method."
}
}
我尝试使用application / json,但它也没有用。
为什么OneDrive在这种情况下关注内容类型?
我应该使用哪种内容类型?
此处没有关于Content-Type的信息:
http://msdn.microsoft.com/en-us/library/dn659743.aspx#delete_a_file
答案 0 :(得分:2)
Content-Type标头用于说明在请求正文中发送的内容类型。在DELETE请求的情况下,您不应该指定请求正文,因为您不应该发送请求正文。
如果您在不包含正文的请求上发送了Content-Type,这可能会导致服务混淆它收到格式错误的请求,这就是为什么我认为您看到400个错误的请求响应在删除方案中无效。
以下是我今晚发送的请求,该请求成功运行:
DELETE https://apis.live.net/v5.0/file.8bf6ae9dbc6ca4c.8BF6AE9DBC6CA4C!39763 HTTP/1.1
Accept: */*
Authorization: bearer EwCAAq...BbWPszRgepabcSYljAQ==
Host: apis.live.net
响应:
HTTP/1.1 200 OK
Content-Length: 0
...