アプリケーション用に作成したWeb APIを呼び出すときに、ASP.NETコアで奇妙なエラーが発生します。 GET要求は正常終了し、必要なすべてのデータを返しますが、POST/PUTコマンドはすべて、特にMVCアプリケーションから502を返します。 PostmanからAPIを呼び出して適切な応答を得て、オブジェクトをデータベースに作成することができます。502 POST/PUT Web APIコール時のゲートウェイがASP.NET Core MVCから呼び出される
502 - Webサーバーが、ゲートウェイまたはプロキシサーバーの として機能しているときに無効な応答を受信しました。 を探しているページに問題があり、表示できません。 ( ゲートウェイまたはプロキシとして動作する)Webサーバーがアップストリームコンテンツサーバに接触した場合、 は、それがコンテンツサーバから無効な応答を受け取りました。
async Task Action() { response = await _service.CreateIncident(model); } await WindowsIdentity.RunImpersonated(identity.AccessToken, Action);
CreateIncident(モデル)::
using (var client = new HttpClient(new HttpClientHandler { UseDefaultCredentials = true })) { var newIncident = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json"); var response = await client.PostAsync(hostUri, newIncident); return response; }
は、1つのGET要求がある
私はAPIへのすべてのWeb要求のための次のコードで統合Windowsログインを偽装しています私はAjaxを通じて、ユーザーに表示するインクリメンタルIDを取得してから、502 Bad Gatewayを返す新しいインシデントを作成します。これはIIS設定が間違っていますか?
newIncident文字列が255文字より長いですか? – Sparrow
コマンドはサーバーに送られます(実際に起こったことはわかりませんでしたが、実際にこの作業を開始して実現するために何かを変更している可能性があります)...しかし、私はまだ502 Bad PUT/POSTリクエスト後にユーザーをリダイレクトしようとすると(たとえば、ユーザーがオブジェクトを作成し、そのオブジェクトのGETページに誘導される)、ゲートウェイエラーが発生します。 –