0

우리는 일부 컴퓨팅을 수행하고 클라이언트에게 파일을 반환하는 웹 응용 프로그램을 가지고 있습니다. 컴퓨터가 5 분 안에 IE와 Chrome에서 정상적으로 작동하면 파일을 가져 오지만 컴퓨터가 5 분 이상 걸리는 경우 IE가 "Internet Explorer에서 웹 페이지를 표시 할 수 없습니다"라는 메시지가 표시되고 Chrome이 계속 실행되어 결국에는 서버로부터의 파일.IE 시간 초과 5 분 후

WinInet의 KeepAliveTimeout, ReceiveTimeout, ServerInfoTimeout과 같은 레지스트리 설정을 변경해 보았지만 도움이되지 않았습니다. 진단 연결 문제 단추를 클릭하면 "Windows에서 HTTPerror 메시지 수신 : 403 (금지됨)"이라는 메시지가 표시됩니다.이 메시지는 자격 증명없이 사이트에 다시 액세스하려고 시도하기 때문에 발생한다고 생각됩니다. 피들러를 사용하면 요청이 504 상태로 종료되고 "ReadResponse() failed :이 서버가이 요청에 대한 응답을 반환하지 않았습니다."라는 메시지가 표시됩니다. 흥미롭게도 한때 피들러가 실행 중일 때 크롬이 시간 초과된다는 사실을 관찰했습니다 (재실행으로 확인하지 않았습니다).

이것은 MVC 프레임 워크를 사용하는 ASP.Net 웹 응용 프로그램입니다.

나는 상당한 시간을 들였지만이를위한 해결책을 찾지 못했습니다. 유용한 포인터는 정말 감사하겠습니다.

답변

1

KB181050에서 당신은 일반적으로 작은 조각으로 긴 프로세스를 분해 할 수 있습니다. 또는 서버는 상태 데이터를 반환하여 사용자에게 프로세스를 업데이트 할 수 있습니다. 또한 메시지 기반 또는 비동기식 접근 방식을 사용하여 작업 제출 후 사용자에게 즉시 반환하고 긴 프로세스가 완료된 후에 사용자에게 알리는 긴 서버 프로세스를 만들 수 있습니다. 환언

<div>를 생성하고 상기 요청이 서버에 의해 승인 된 이후 "처리"값으로 즉시 그 <div> 채운다. 그런 다음 처리가 끝날 때마다 ajax 또는 javascript를 사용하여 동일한 <div>을 업데이트하십시오.