RESTful サービスをバージョン管理するために、URL 書き換えモジュールを使用して次のことを行いたいと考えています。
Accept ヘッダー (HTTP_ACCEPT?) が application/vnd.mycompany.service+xml の場合、https://server/service/を server/service/v1/ にマップします。
サービスの次のバージョンでは、メディア タイプのバージョン番号を上げて v2 を展開し、次のマッピングを実行できるようにしたいと考えています。
Accept ヘッダー (HTTP_ACCEPT?) が application/vnd.mycompany.service-2+xml の場合、https://server/service/を server/service/v2/ にマップします。
次のルールを試しましたが、機能しません。
<rules>
<rule name="Route request to correct service version" patternSyntax="Wildcard">
<match url="*service*" />
<conditions>
<add input="{HTTP_ACCEPT}" pattern="application/vnd.mycompany.*" />
</conditions>
<action type="Rewrite" url="Service/v1/{R:2}" logRewrittenUrl="true" />
</rule>
</rules>
どんな助けでも大歓迎です!
--larsw