【发布时间】:2015-04-02 13:44:18
【问题描述】:
我尝试通过调用删除 API 来删除配置。 对于我的 API 请求,我使用 Restsharp,因为它适用于 GET 和 POST。
现在我有以下问题。当我尝试调用删除时,我得到错误
405 "MethodNotAllowed".
在我的回复中,我有以下消息:
“HTTP 方法不允许,支持的方法:GET”
代码片段:
var client = new RestClient("http://test.de/");
var request = new RestRequest("testrules/test");
request.Credentials = new NetworkCredential("username", "password");
var response = client.Delete(request);
我还尝试了client.Execute() 方法,并将我要删除的元素的 id 添加到 AddParameter() 和 AddUrlSegment() 方法上。
我已经在 Fiddler 中跟踪了响应:
DELETE http://test.de/testrules/test HTTP/1.1
Accept: application/json, application/xml, text/json, text/x-json, text/javascript, text/xml
User-Agent: RestSharp/105.0.1.0
Host: test.de
Content-Length: 0
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
当我在 Chrome 中使用 Advanced RestClient 尝试我的请求时,我在 Fiddler 中收到以下请求:
DELETE http://test.de/testrules/test HTTP/1.1
Host: test.de
Connection: keep-alive
Authorization: Basic Q29udGludW91czp0ZXN0
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36
Origin: chrome-extension://hgmloofddffdnphfgcellkdfbfbjeloo
Content-Type: application/json
Accept: */*
Accept-Encoding: gzip, deflate, sdch
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
有人知道使用 RestSharp 删除的示例吗? 我从 stackoverflow 中查看了这个示例:RestSharp simple complete example 和 RestSharp 文档中的示例,但这些示例对我没有任何帮助。
【问题讨论】:
-
REST 服务器是你的还是第三方的?
-
REST 服务器不是我的。
-
端点支持 DELETE,因为我只能使用 Chrome 的 RestClient 调用带有 DELETE 的端点。如果我尝试使用 GET 或 POST 等其他语句(它还应该是什么?)它也不起作用。并且在文档中写到它是DELETE。
-
我错过了您可以与其他客户联系的部分。
标签: c# restsharp methodnotfound