MVC 4.0 RC および EF 5.0 プレリリースを使用して、.NET 4.5 で ASP.NET WEB API コードを実行しています。これは、IIS 7.5、Win サーバー 2008 R2 データセンターで実行されています。
現象は次のとおりです。
POST をローカルホスト (IIS 上) にローカルで呼び出すと、すべて問題なく、作成されたオブジェクトに応答ページ (応答ヘッダーに設定されている) としてステータス 201 でリダイレクトされます。
しかし、外部URLから呼び出しても応答がありません。コードは正常に実行され、例外はありませんが、たとえば chrome 開発者ツールでは、応答が返されません。リクエストがキャンセルされたと表示されます。
何を試しても、これを解決することはできません。同じ IIS フォルダーのまったく同じコードは、ローカル呼び出しからは正常に実行されますが、リモート呼び出しでは何も返されません。これは、2 つの異なるコントローラーで発生します。
ただし、他の呼び出し (Get など) は、ローカル呼び出しとリモート呼び出しの両方でうまく機能します。
これは、応答を作成する POST メソッドのコントローラー コードです。
HttpResponseMessage response = this.Request.CreateResponse<Movie>(HttpStatusCode.Created, Movie);
string uri = Url.Route(null, new { id = Movie.Id });
response.Headers.Location = new Uri(Request.RequestUri, uri);
return response;
あなたの助けに感謝します!
ありがとう!