2015-04-02 52 views
0

我嘗試通過調用刪除API來刪除配置。 對於我的API請求,我使用Restsharp是因爲它可以在GET和POST下正常工作。C#使用RestSharp獲得響應405刪除

現在我有以下問題。當我嘗試致電刪除時,我收到錯誤

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 t我想刪除設置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中我得到提琴手以下請求我與高級RESTClient實現要求:

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文檔中的例子,但是這些例子都沒有幫助我。

+0

REST服務器是您的還是第三方? – 2015-04-02 14:35:14

+0

REST服務器不是我的。 – Schweimi 2015-04-02 14:45:29

+0

端點支持DELETE,因爲我只能使用Chrome的RestClient通過DELETE調用端點。如果我嘗試使用其他語句,如GET或POST(還應該是什麼?),它不起作用。並且在文檔中寫入它是DELETE。 – Schweimi 2015-04-02 14:53:50

回答

0

您是否有可以發佈的其他API服務代碼?從你寫的內容看來,感覺restsharp客戶端使用HTTP DELETE關鍵字發出Delete請求,而Rest API端點接受Delete方法的HTTP GET;但沒有關於服務器端代碼的信息很難說。

+0

不,我沒有服務器端代碼。但我知道服務器只接受刪除。爲什麼它應該和Advanced RestClient一起工作呢?在那裏我配置刪除,當我調用api與restclient我必須使用刪除,否則它不會工作。 我認爲RestSharp存在問題。也許我有一些配置錯誤,但我不太確定。 – Schweimi 2015-04-02 13:56:21

+0

在兩個請求中我可以看到另外一個區別 - 即高級RestClient的標題具有授權行。那可能是問題,DELETE方法需要授權,而GET不? – ofcoursedude 2015-04-02 13:59:26

+0

(對不起,從帖子中不清楚高級RestClient請求實際工作) – ofcoursedude 2015-04-02 14:01:16