1

X-HTTP-Method-Override ヘッダーのサポートを必要とする ServiceStack Web サービスがあります。

X-HTTP-Method-Override ヘッダー セットを使用してGet リクエストを介してDelete リクエストをシミュレートしようとしましたが、次のようになりました:-

404 - Handler for Request not found

リクエストの形式は次のとおりです。

Get - http://localhost/test/1

ヘッダー

User-Agent: Fiddler
Host: localhost
X-HTTP-Method-Override: Delete

サービスとその DTO 実装は次のようになります。

[Route("/test/{id}", HttpMethods.Delete)]
public class TestRequest {
    public int id { get; set; }
}

public class TestService : Service {

    public object Delete(TestRequest request){
        return request.id;
    }
}

X-HTTP-Method-Override 機能がサポートされているという ServiceStack ソースのスニペットを見つけました。

これを機能させるためにプロジェクトで構成する必要があるものは他にありますか? 助けてください...

4

1 に答える 1

1

私はそれを理解しました、私は次のように要求 dto に Get 動詞を追加しました:

[Route("/test/{id}", "Delete,Get")]
public class TestRequest {
    public int id { get; set; }
}

X-HTTP-Method-Overrideを介してGetリクエストを介してシミュレートされると、Delete メソッドが呼び出されるようになりました

public class TestService : Service {

    public object Delete(TestRequest request){
        return request.id;
    }
}
于 2013-06-19T22:53:46.833 に答える