2009-12-17 2 views
0

uploadify jquery 플러그인과 CastleProject Monorail을 백엔드로 사용하는 프로젝트를 진행하고 있습니다. 내가 얻는 문제는 업로드하는 동안 Ajax 호출 (그 동안 호출되는)을 차단하는 것 같다는 것입니다. 아약스는 업로드가 끝난 후에 호출됩니다.Uploadify + Castleproject Monorail : 업로드하는 동안 Ajax 호출을 수행 할 수 없습니다.

이상한 일은, 새로운 castleproject 모노레일 프로젝트에 업로드를 구현할 때, 그 동안 호출 된 아약스 호출입니다.

블로킹의 원인이되는 전 프로젝트에서는, 지금은 생각할 수없는 설정이있는 것 같습니다. Web.config 설정은 동일합니다.

아무도이 문제의 원인이 될 수있는 아이디어가 있습니까?

감사

업데이트 :

내가 문제를 찾은 것 같아 : 즉시 세션 개체가 사용 된 바와 같이, 웹 서버 블록 여러 요청. 이것은 경쟁 조건의보다 일반적인 문제를 우회합니다.

내게 경주 조건을 직접 처리 할 수 ​​있도록 사용 중지하는 방법이 있습니까?

+0

모노레일 아약스 전화에 프로토 타입을 사용하고 있습니까? –

+0

jquery와 prototype (jQuery의 noConflict 사용) – Zurb

+0

프로토 타입을 제거하고 jQuery를 사용하여 ajax 호출을 시도해 볼 수 있습니까? 예 : jQuery.get ('/ mycontroller/myaction', function (data) {...}) –

답변

0

해결 방법을 찾았지만 모든 경우에 적용 할 수있는 것은 아닙니다. 방향을 알려준 Mauricio Scheffer에게 감사드립니다.

모노레일 처리기 (즉, 컨트롤러 기능)를 사용하여 업로드 (또는 장기 실행 프로세스)를 처리하는 대신 모노레일 외부에 별도의 처리기 (ashx)를 만들어 물건을 처리하십시오.

이 처리기는 여러 요청을 차단하지 않도록 IReadOnlySessionState 인터페이스를 구현해야합니다. 유일하게 잡힌 점은이 핸들러에서 세션 객체를 읽고 쓰지 않을 수 있다는 것입니다.

관련 문제