前提・実現したいこと
ASP.NET WebAPIアプリを作成していますが、クライアント環境のバージョンが複数想定され
1つのWebAPIプログラムの中でバージョン管理をして挙動を変えるのではなく
バージョンごとのプログラム(=ソリューション)を作成して、常に複数動作させたいと考えています。
具体的には、WebAPI "A-v1.0" と WebAPI "A-v2.0" を別々のソフトウェア、ソリューションとして作成して
外部公開しないwindowsサーバーのIIS状に2つを同時に配置・実行する。
URLを叩くとき、例えば"http://[固定ドメイン]/api/v1.0/aaa" と叩けば"A-v1.0"のaaaメソッドが呼び出される("A-v2.0"プログラムは動作に関与しない)といった具合を想定しています。
"A-v1.0"プログラムでのルーティング動作を規定すればhttp://[固定ドメイン]/api/v1.0/以降のパラメータによって挙動を制御できることは確認できましたが、
URLリクエストがhttp://[固定ドメイン]/api/v1.0/なのかhttp://[固定ドメイン]/api/v2.0/なのかによって、呼び出すプログラムそのものを変更したい場合は、どの設定を変更すればよいのでしょうか。あるいはどの分野?システム?について勉強すればよいのでしょうか。
ASP.netで作成しているWebAPIのソリューション単位では管理できないことではないかと考えています。
※単一のwebAPIプログラムにおけるバージョン管理については、下記などを見て解決しています。名前空間で挙動が変えられるのですね。
https://blogs.msdn.microsoft.com/webdev/2013/03/07/asp-net-web-api-using-namespaces-to-version-web-apis/
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/15 02:09
退会済みユーザー
2018/03/15 03:06