0

Delete API を呼び出して構成を削除しようとしています。私の API リクエストでは、Restsharp を使用しています。これは、GET と POST で問題なく動作するためです。

今、私は次の問題を抱えています。delete を呼び出そうとすると、エラーが発生します

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 から高度な 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の簡単な完全な例とRestSharpのドキュメントの例ですが、この例は何も役に立ちませんでした。

4

1 に答える 1

0

投稿できるRest APIサービスコードはありますか? あなたが書いたことから、Rest API エンドポイントが Delete メソッドの HTTP GET を受け入れている間に、restsharp クライアントが HTTP DELETE キーワードを使用して削除要求を発行するように感じます。ただし、サーバー側のコードに関する情報がないと、わかりにくいです。

于 2015-04-02T13:52:36.307 に答える