현재 일부 타사에서 일부 XML 데이터의 POST를 수행하는 HTTP 처리기를 구현 중입니다. 그런 다음 일부 처리 작업을 수행 할 것입니다. XML을 사용하여 처리하는 데는 약간의 시간이 걸릴 수 있습니다. 일단 POST에서 XML을 꺼내면 데이터를 처리하는 동안 클라이언트와의 연결을 유지할 필요가 없습니다. 클라이언트가 나에게 글을 게시 할 시간을 정할 필요가 없기 때문에 XML을 포착하여 연결 만 허용하려고합니다..NET HTTPHandler에서 연결 해제
이 문제를 쉽게 해결할 수있는 방법이 있습니까? Response.Close()를 사용하면 연결이 제대로 닫히지 않으므로 올바르지 않습니다. Response.End()는 HTTP 처리기를 모두 종료합니다. 처리를 백그라운드 스레드로 던질 수는 있지만 중간에 내 프로세스를 죽일 수있는 AppDomain을 제거 할 수 있으므로 ASP.NET에서 약간 위험 할 수 있다고 들었습니다.
의견을 보내 주시면 감사하겠습니다. 도와 주셔서 감사합니다!
"제대로 닫히지 않아 Response.Close()가 올바르지 않습니다."여기에 어떤 오류가 있습니까? – CodeSpread
http://msdn.microsoft.com/en-us/library/system.web.httpresponse.close.aspx 상태 : "이 메서드는 클라이언트에 대한 연결을 갑자기 종료하고 일반적인 HTTP 요청 처리를위한 것이 아닙니다. 이 메서드는 클라이언트에 리셋 패킷을 보내 서버 나 클라이언트 또는 그 사이의 다른 곳에서 버퍼링 된 응답 데이터를 삭제할 수 있습니다. " 테스트를 통과했을 때 클라이언트에서 HTTP 오류가 발생했습니다. –
올바른 것으로,이를 방지하기 위해 먼저 스트림을 닫은 다음 응답을 닫습니다. – CodeSpread