내 ASP.NET 응용 프로그램은 사용자에게 JSON 개체를 반환하며 이진 인코딩 된 데이터를 포함합니다. 이로 인해 나는 HTTP 압축을 가능하게하고 Content-Length로 시작된 문제를 결정했다.콘텐츠 길이 및 httpCompression 딜레마
압축을 사용하면 Content-Length 헤더가 무시되고 응답이 전송되고 연결이 즉시 닫히지 않습니다. 모든 데이터가 전송 된 후 약 15 초 동안 연결이 계속 열립니다.
HTTP 압축을 사용하고 싶지만 Content-Length 헤더로 문제를 해결하는 방법을 모르겠습니다.
context.Response.AddHeader("Content-Length", jsonObject.ToString().Length.ToString());
context.Response.Write(jsonObject);
context.Response.Flush();
context.Response.Close();
여기에 무슨 문제가 있습니까? 우리가 무엇을 도울 것인지 명확히 설명하십시오. –
잠시 동안 연결이 열려 있다는 것 외에 어떤 문제가 있습니까? – jgauffin
데이터를 전송 한 후 약 15 초 동안 연결이 닫히지 않는 것이 문제입니다. 이 코드는 온라인 API에서 사용되며 연결이 닫히지 않으면 클라이언트는 계속 연결 상태를 유지합니다. Content-Length를 추가하면 모든 것이 정상적으로 작동하고 데이터가 전송 된 후에도 연결이 닫힙니다. 불행히도 Content-Length는 HTTP 압축에서 무시됩니다. 콘텐츠 길이 및 HTTP 압축을 갖는 방법? – Tomas