2012-01-02 6 views
0

flex의 보안 제한을 해결하는 데 문제가 있습니다.보안 제한 : 데이터베이스 쿼리 결과를 로컬 파일에 저장하는 방법?

파일 저장은 사용자 상호 작용시에만 호출 할 수있는 동작입니다.

문제는 내 사용자가 저장 버튼을 클릭하면 저장하려는 파일의 데이터를 가져 오기 위해 데이터베이스 쿼리를 수행해야한다는 것입니다.

Flex가 비동기로 작동하기 때문에 데이터베이스를 호출 한 다음 다른 함수에서 ResultEvent를 catch해야합니다.

이 함수에서는 더 이상 사용자의 mouseclick 이벤트가 발생하지 않습니다. 이 파일을 어떻게 저장해야합니까?

예 :

protected function saveFile(event:MouseEvent):void 
{ 
    ROWrapper.Controller.loadData(); 
} 

protected function onDataLoaded(event:ResultEvent):void 
{ 
    var XMLdata:XML = event.result as XML; 
    var fr:FileReference = new FileReference(); 
    fr.save(XMLdata); 
} 


<s:Button x="283" y="254" label="Save" click="saveFile(event)"/> 
+0

샘플 코드를 게시하면 답변을 얻는 데 도움이 될 수 있습니다. – Exhausted

답변

0

당신이 데이터 그리드에서 첫 번째 결과 집합을 표시하고 데이터가 배열 객체로 반환하고, 저장하고 나면 다음 "다운로드"라는 버튼을 활성화 할 수 있나요?

이렇게하면 사용자는 데이터를 미리 볼 수 있고 한 번 만족되면 캐시 된 배열 객체 또는 데이터 격자의 데이터 세트에서 직접 데이터를 다운로드 할 수 있습니다.

관련 문제