아래 코드는 새 MVC 프로젝트에서 매우 단순화 된 테스트 동작입니다. 이 작업은 test
이라는 단어가 포함 된 간단한 텍스트 파일을 반환하기위한 것입니다.ASP.net MVC 파일 내용 길이
public ActionResult FileTest()
{
return File(System.Text.Encoding.UTF8.GetBytes("test"), "text/plain", "test.txt");
}
서버에서 HTTP 응답을 볼 때 내가 대신 나는 Content-Length: 122
이
가 크롬과 IE는 숫자 절 Content-Length
의 미스 매치에 대처 완벽 할 것 같다 참조 Content-Length: 4
와 헤더를 볼 것으로 예상 것 실제로 반환 된 바이트 수입니다. 그러나 Firefox (v47)는 다운로드 한 122 바이트 중 4 바이트를 무기한 다운로드하지 못합니다.
내 질문은 : 내가 잘못하고있는 것을 목격하고있는 동작입니까, 아니면 프레임 워크의 결함입니까? 둘째,이 문제를 해결하기 위해 내가 할 수있는 일은 무엇입니까?
의견을 보내 주셔서 감사합니다. 그러나 FileResult로 변경해도 아무런 변화가 없습니다. 테스트에 관심이 없으면 Content-Length 헤더는 무엇으로 반환됩니까? –
콘텐츠 길이는 122이지만 Firefox는 여전히 텍스트 파일을 다운로드하고 열었습니다. – Mahendra
방금 Firefox를 v47.0.1로 업데이트했고 문제가 해결되었습니다. 나는 그 동작을 설명 할 릴리스 노트와 관련된 것을 볼 수 없다. MVC가 잘못된 Content-Length 헤더를 반환하는 이유를 이해하는 데 계속 관심이 있습니다. –