さて、私は put アクションと void の戻り型を持つ Web API コントローラーを持っています。VS のビルトイン iisepxress を使用して実行し、呼び出すと、期待どおり 204 が返されます。ヘッダーは次のとおりです。
Cache-Control no-cache
Connection close
Content-Type text/html
Date Thu, 10 Oct 2013 19:33:43 GMT
Expires -1
Pragma no-cache
Server Microsoft-IIS/8.0
X-AspNet-Version 4.0.30319
X-Powered-By ASP.NET
まったく同じコードを sbx 環境に配置すると、204 が返されますが、ヘッダーは次のとおりです。
Cache-Control no-cache
Date Thu, 10 Oct 2013 19:39:59 GMT
Expires -1
Pragma no-cache
Server Microsoft-IIS/7.5
X-AspNet-Version 4.0.30319
X-Identifier 17253
X-Powered-By ASP.NET
関連する違いは、2 番目のものに contentType がないことです。
これが引き起こす問題は、Firefox (および私が思うに IE) ではデフォルトで xml になり、解析しようとして失敗することです。
web api コントローラーで contentType を設定することでこれを修正する方法は知っていますが、それは私にとって最善の修正とは思えません。
だから、私が求めているのは、IIS のどの設定の違いがこれを引き起こしているのでしょうか?
ありがとう
注: 私の URL は /foo/bar/2 のように見えるので、MIME タイプではありません。