【解決方法】HTTP ステータス コードの結果が 302 見つかりました

プログラミングQA


コードは、トランザクションの添付ファイルを表示します。
ローカル コンピューターでは問題なく動作しますが、サーバーにデプロイすると、302 found が表示されます。 どこが間違っているかを指摘することはできないようです。

Remote Address:192.168.136.7:80
Request URL:http://ptyisrequest-dev/DashBoard/ViewAttachment?filename=2014%5CHW14-1555_AT1.xls
Request Method:GET
Status Code:302 Found
Cache-Control:private
Content-Disposition:attachment; filename=HW14-1555_AT1.xls
Content-Length:171
Content-Type:application/vnd.ms-excel; charset=utf-8
Date:Mon, 01 Jun 2015 08:57:56 GMT
Location:/error/unknown?aspxerrorpath=/DashBoard/ViewAttachment
Server:Microsoft-IIS/6.0
X-AspNet-Version:4.0.30319
X-AspNetMvc-Version:3.0
X-Powered-By:ASP.NET

これが私のコントローラーのコードです:

C#
[Authorize]
[HttpGet]
public FileResult ViewAttachment(string fileName)
{
  var path = tempPath + "\\" + fileName;
  FileInfo file = new FileInfo(path);
  var mimeType = ClassHelper.GetMimeType(file.Name);
  return File(path, mimeType, file.Name);
}

誰でもこれを修正する方法を教えてもらえますか?

解決策 1

302 は、一時的なリダイレクトがあり、リダイレクト ページが見つかったことを意味します。

あなたはこれを要求しました:
http://ptyisrequest-dev/DashBoard/ViewAttachment?filename=2014%5CHW14-1555_AT1.xls

サーバーはこれを返しました:
/error/unknown?aspxerrorpath=/DashBoard/ViewAttachment

ページが 404 またはその他のエラー コードを返すように見えますが、サイトのセットアップではエラー ページにリダイレクトされるだけです。

可能であれば、エラー ページを取得してより正確なエラー コードを出力し、それをメソッドで処理してみてください。

そうでない場合は、応答コードと場所を確認してください。 上記の場合は、エラーを処理します。

また、ブラウザで URL にアクセスし、そのページに表示されているエラー メッセージを確認します。

それが役立つことを願っています
アンディ^_^

コメント

タイトルとURLをコピーしました