2

私は http API を書いていますが、asp.net で慣れているよりも少し柔軟性が必要です。それは私が抱えている非常に単純な問題であり、正しい軌道に乗るための助けが必要です.

私の問題は、リクエストに基づいてレスポンスオブジェクトを作成したいということです。Fx ユーザーは、"myapi/images/5/xml" を要求すると、xml ドキュメントを取得できます。または、json で終わっていた場合は、json として取得します。適切な応答オブジェクトを作成するのに問題はありません。あるオブジェクトのすべてのリクエストを収集し、URL を正規表現で解析して、正しいレスポンスを作成する方法が必要なだけです。

しかし、Web アプリケーションですべてのリクエストを収集するにはどうすればよいでしょうか?

4

1 に答える 1

1

おそらく、URL 全体を正規表現で解析したくないでしょう。おそらく、ASP.NET のルーティング エンジンにフックする方が簡単でしょう:-

routes.MapHttpRoute(
  name: "MyApi",
  routeTemplate: "myapi/{controller}/{id}/{responseType}",
  defaults: new
  {
    id = RouteParameter.Optional, responseType = RouteParameter.Optional
  });

その後、アクション メソッドresponseTypeは URL からパラメーターを受け取ることができます。

上記のスティーブンのコメントに同意しますが、おそらく、URL からではなく、リクエスト ヘッダーから応答タイプを取得する必要があります。

于 2012-10-30T15:51:37.750 に答える