이 플래시/플렉스 응용 프로그램을 가지고있어 URLRequest
호출 문제가 발생했습니다. 서버에 전화를 걸면 콘텐츠가 정상적으로 수신됩니다. 그 내용이 캐시에 저장되고 다음에 URLRequest가 로컬 캐시를 사용하여 검색합니다. 때때로 작동하지만 때로는 통화가 끝나지 않은 경우 - 보류중인으로 유지됩니다. 최신 플래시 플레이어와 다른 브라우저를 사용하고 있습니다. 내 컴퓨터에서 크롬을 사용하여 이슈를 복제 할 수 있으며 동료는 파이어 폭스에서 복제 할 수 있습니다. 플래시 플레이어 로그 파일을 살펴 봤는데 통화가 성공하고 통화가 보류 상태에있을 때 다른 점이 없습니다 ...flash.net.URLRequest 통화가 보류 상태로 유지됨
또한 플래시 플레이어를 최신 버전으로 업그레이드 할 때까지 내 친구가이 문제를 재현 할 수 없습니다.
웹 서버 로그에는 문제가 발생하지 않았으며 google 크롬의 네트워크 도구는 해당 시간 요청이 로컬 캐시를 사용하고 있음을 확인했기 때문에 이는 서버 측 문제가 아닌 것으로 생각합니다.
현재 클라이언트가 만료일 및 no-cache를 사용하여 캐시를 사용하지 않도록 강요하므로이 문제를 해결했지만 캐시를 사용하고 싶습니다. 왜 이러한 일이 발생하는지 이해하고 싶습니다.
고마워요!
책임 코드 :
loader = new utils.URLLoader();
loader.dataFormat = flash.net.URLLoaderDataFormat.BINARY;
loader.addEventListener(flash.events.Event.COMPLETE, this.onLoad);
loader.addEventListener(flash.events.IOErrorEvent.IO_ERROR, this.onErr);
loader.load(new flash.net.URLRequest(URL));
갱신 :
가 지금은 캐시가 눈부시게 반짝되지 않는다는 것을 알게되었습니다. 요청 전에 항상 캐시를 정리했지만 여전히이 오류를 재현 할 수 있습니다. GET 요청은 아직 보류 중으로 표시되지만 이번에는 wireshark가 실행되어 재미있는 결과를 표시합니다. 문제가있는 요청은 wireshark에 로그인되어 있지 않습니다. 어떻게 가능할까요?
오류가 있습니까? 전화가 끝나지 않았을 때? – Benny
나는 내 직감으로 가서 그 결과가 당신의 결과에 달했다고 말한다. 코드를 게시하십시오. –
나는 어떤 오류도 내지 않았다. 나는 타이머가 설정되어 있지 않고 문서에 idleTimeout이 기본값으로 0이기 때문에 오류가 없다고 생각합니다. – fritz