1. 기본적인 의사소통 과정
그림 1 SWF+XML과 서버 간의 통신 프로세스에 대한 개략도
그림 1은 이 예의 통신 프로세스에 대한 개략도를 보여줍니다. Flash와 데이터베이스 간에 정보를 전달하는 서버 측 스크립트는 XML 형식으로 데이터를 읽고 씁니다.
ActionScript를 사용하여 SWF 파일에 수집된 정보를 XML 객체로 변환한 다음 해당 데이터를 XML 문서로 서버측 스크립트에 보낼 수 있습니다. ActionScript를 사용하면 서버에서 반환한 XML 문서를 SWF 파일에서 사용할 XML 객체로 로드할 수도 있습니다. 이 예에서는 관련 XML 데이터를 저장하는 작업이 서버의 스크립트 프로그램에 의해 수행되는데, 이는 이 예의 핵심이기도 합니다.
2. 플래시와 ASP 간의 통신 방법
플래시와 ASP 간에는 다양한 통신 방법을 사용할 수 있습니다. 이 예에서는 LoadVars 개체를 사용합니다.
LoadVars는 POST 메서드를 사용하여 서버에 변수를 보내는 방법을 제공합니다.
3. 서버 스크립트
서버 스크립트는 다양한 프로그램으로 작성할 수 있습니다. 이 예에서는 관련 스크립트를 작성하기 위해 ASP를 예로 사용했습니다.
Microsoft ASP(Active Server Pages)는 동적 대화형 웹 서버 응용 프로그램을 만들고 실행할 수 있는 서버측 스크립팅 환경입니다.
스크립트는 관련 스크립트 언어를 사용하여 작성됩니다. 스크립트 언어는 HTML과 Java, C++ 및 Visual Basic과 같은 프로그래밍 언어 사이에 있습니다. HTML은 일반적으로 텍스트 형식을 지정하고 웹 페이지를 연결하는 데 사용됩니다. 프로그래밍 언어는 복잡한 명령 시퀀스를 컴퓨터에 보내는 데 자주 사용됩니다. 스크립팅 언어를 사용하여 컴퓨터에 명령을 보낼 수도 있지만 해당 구문과 규칙은 컴파일 가능한 프로그래밍 언어만큼 엄격하고 복잡하지 않습니다. 스크립팅 언어는 주로 텍스트 서식을 지정하고 프로그래밍 언어로 작성된 컴파일된 구성 요소를 사용하는 데 사용됩니다.
ASP를 사용하면 웹 개발자가 여러 스크립트 언어로 전체 프로세스를 작성할 수 있습니다. 실제로 단일 .asp 파일 내에서 여러 스크립트 언어를 사용할 수 있습니다.
웹 서버에 해당 스크립팅 엔진이 설치된 모든 스크립팅 언어를 사용할 수 있습니다. 일반적으로 VBScript와 JavaScript라는 두 가지 언어가 사용되며 그 중 ASP의 기본 스크립트 언어는 VBScript입니다. 이 예에서는 VBScript를 사용하여 스크립트를 작성합니다.
아래에서 구체적인 제작 사례를 살펴보겠습니다.
생산 예:
1. 플래시 쪽
먼저 다음 인터페이스를 만듭니다. 주석 지점을 캡처하는 코드는 이전 강의에서 언급되었습니다. 이 예제에서는 장소 이름 외에 몇 가지 기본 정보가 추가되며 여기서는 반복하지 않습니다. 결국 저장해야 하는 코드는 문자열 변수 SendData_srt에 할당됩니다.
그림 2 SWF 파일 인터페이스 1
더 큰 이미지를 보려면 클릭하세요
그림 3 SWF 파일 인터페이스 2는
Link라는 변수를 사용하여 서버의 메시지를 받아들입니다. 값이 1이면 서버와의 통신 연결이 성공했음을 나타냅니다. 사용
LoadVars를 선택한 다음 sendAndLoad 메서드를 사용하여 LoadVars 엔터티 아래에 데이터를 보냅니다.
타임라인의 액션 패널을 열고 다음 ActionScript 코드를 입력합니다.
function SendData():Void { //데이터를 보내는 함수를 정의합니다. var SendData = new LoadVars(); //새 LoadVars 객체를 생성합니다. SendData.Check = 1 //SendData 데이터를 확인하기 위해 서버에 대한 확인 작업을 설정합니다 . = SendData_srt; //데이터에 보낼 데이터 변수 SendData_srt를 할당합니다. output_txt.text = "잠시 기다려주세요..."; //상태 텍스트는 "잠깐 기다려주세요..."로 표시됩니다. SendData.onLoad = function(success) { //서버와의 연결을 확인하는 함수 if(success) { //서버와의 연결이 성공한 경우 if(this.Link== "1") { //확인 작업이 성공한 경우 output_txt.text = "성공적으로 표시되었습니다! 검토 후 유효합니다. "; //상태 텍스트가 성공으로 표시됩니다. } } else { output_txt.text = "서버가 사용 중입니다. 나중에 다시 시도하십시오!" ; , 실패 메시지가 반환됩니다 . } }; SendData.sendAndLoad( "http://www.wanggesz.com/XMLData/Save.asp", SendData, "post") //포스트 모드에 저장할 데이터 보내기 } |
다음 내용으로 ASP 파일을 만듭니다.
<%@Language="VBScript"%> <% Dim Check 'SWF 파일의 데이터를 확인하기 위한 Check 변수 정의 Dim Link' 정의 통신 성공을 나타내기 위해 SWF 파일로 반환하는 데 사용되는 Link 변수 Dim data 'SWF 파일에서 저장할 데이터를 받기 위한 데이터 변수를 정의합니다. set data = Request.Form("data") '받을 데이터를 받습니다. SWF 파일 세트에서 저장됨 Check = Request.Form("Check") 'Check = 1인 경우 SWF 파일의 데이터를 확인합니다. Then 'SWF 파일 ID가 올바른 경우 Link = 1 '링크 값을 1로 설정합니다. 통신이 성공했습니다 End if 'if 문을 종료합니다 xml.Async=False xml.ValidateOnParse=False xml.Load(server.mapPath("http://www.wanggesz.com/XMLData/data.xml")) 세트 newNode=mxml.createNode("element", "data", "") 로드
(newNode) 로 지정합니다.
Set objname = mxml.createAttribute("data") xml.save(server.mapPath("http://www.wanggesz.com/XMLData/data.xml") ) %> |
이러한 방식으로 지도 작업, 지명 주석 및 기타 기능을 차례로 완료했습니다. 지도를 사용하는 과정에서 쿼리 및 위치 지정을 위해 장소 이름을 사용하는 것도 필수적인 공통 기능입니다.