私のOWINミドルウェアはこんな感じです。(フレームワークは ASP.NET Web API です)。
public class MyMiddleware : OwinMiddleware
{
    public MyMiddleware(OwinMiddleware next) : base(next) { }
    public override async Task Invoke(OwinRequest request, OwinResponse response)
    {
        var header = request.GetHeader("X-Whatever-Header");
        await Next.Invoke(request, response);
        response.SetHeader("X-MyResponse-Header", "Some Value");
        response.StatusCode = 403;
    }
}
質問:
- から派生するのは推奨される方法 - OwinMiddlewareですか? Katana ソースでは、ミドルウェア クラスの一部が派生し- OwinMiddleware、一部が派生していないことがわかります。
- リクエストヘッダーは問題ありません。 - Next.Invokeミドルウェアの後に応答ヘッダーまたはステータス コードを設定しても、クライアントに返される応答には影響しません。しかし、- Next.Invoke呼び出しの前に応答ヘッダーまたはステータスを設定すると、設定したヘッダーとステータスを含む応答がクライアントに返されます。これらを設定する正しい方法は何ですか?