• 카테고리
    • 전체 글

    • 카테고리1
    • 카테고리2
    • 카테고리3
    • 카테고리4
  • 태그
  • 방명록

'vbscript'에 해당되는 글 1건

  • 2009.08.11 VBScript를 이용한 XmlHttpRequest 하기.

VBScript를 이용한 XmlHttpRequest 하기.

기술자료/Web 2009. 8. 11. 13:01
지금 ClearQuest로 XMLHttpRequest를 해야 되는 경우가 발생되어 적용하는 중,
예제로 준 방법이 Perl 방법이라 난해 한데다 제대로 수행되지 않는 경우가 발생했다.
그래서 VBScript로 적용 선회를 했고 간신히 성공했다.
여기저기 사이트를 통해 알아본 결과 내용을 정리하면 아래와 같다.


맨 먼저 VB에서 HttpRequest 처리를 하려면, XMLHttpRequest를 지원하는 Object를 만들어야 한다.

Dim xmlhttp

xmlhttp = CreateObject("Microsoft.XMLHTTP")


위의 내용을 보면 Microsoft.XMLHTTP라는 오브젝트를 생성하게 되는데, 대개 위의 오브젝트를 생성하면 크게 버전문제와 상관 없이 동작할 것이다. 간혹 유사한 이름이긴 한데, 다른 형태의 XMLHTTP를 부르려면, XML 버전에 따라 지원하기도 하고 안하기도 하는 변덕을 구경하기 때문에, 그냥 위의 내용 처럼 적용해주면 된다.

xmlhttp.open "POST" "http://localhost/ReceiverForData.aspx", false


이번엔 위에서 정의해서 만든 HttpRequest 오브젝트로 실제 호출하기 위한 구성을 해준다.
POST 부분은 데이터가 어떻게 HttpRequest를 타고 전달되는지를 결정하게 되는데,
GET으로 하게 되면 주소값 내에 전달할 데이터가 담기게 되고, POST를 하게 되면 별도로 데이터를
추가해 넣을 수 있다. 이 때 데이터가 크거나 다양한 경우 가급적 POST로 전달하는게 좋다.

xmlhttp.setRequestHeader "Content-Type","application/x-www-form-urlencoded"

  
사실 HttpRequest는 일종의 숨겨진 웹브라우저를 띄워 웹서버를 호출 하는 것이다. 단지 사용자 눈에 브라우저가 뜬 것을 보지 못할 뿐, 뒤쪽에서는 마치 그런 짓을 하고 있는 것이다. 이 때 웹 서버를 호출하는 순간 웹서버에게 자신의 신분을 알려주는 작업을 해야 하는데, 이 작업에 해당하는게 바로 Header에 데이터를 넣는 것이다.
여기서는 현재 웹서버에 데이터를 전달 할때, form 기반으로 데이터를 전달하는 형태라는 것을 알리게 된다.

xmlhttp.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.2)"

  
위와 동일한 역할을 한다. 단지 이 부분은 현재 웹브라우저나, 컴퓨터 설정 상태들을 담는 내용이다. 완전히 웹서버를 속이고 자신이 마치 IE 8.0 인양 알려주는 작업이다. 간혹 일부 웹서버에서는 위와 같이 브라우저 버전이 IE, FireFox, 같은게 아니면 튕기는 작업을 당할 수 있기 때문에, 가급적 자신의 신분을 저렇게 숨겨 놓는게 제일 좋다.
xmlhttp.send "ID=OKSK&Name=OsakuSakurazo"

Post 형태의 데이터를 전송할 때 저렇게 한다. 보낼 데이터가 없으면 빼면 되고, 있다면, 변수이름=값 형태로 쭉 나열한다. 2개 이상의 값을 전송할 때는 사이에다 "&"를 넣어주도록 한다.

만일 결과물이 필요하다면....

xmlhttp.responseText


에서 빼오면 된다.(웹페이지 내에서 Text만 쭉 긁은 값이 나오게 된다.)

이 자료를 만드는데 사용한 Reference들은 다음과 같다.
http://web5.w3.org/TR/XMLHttpRequest/
http://msdn.microsoft.com/en-us/library/ms535874%28VS.85%29.aspx

728x90
블로그 이미지

하인도1

[하인드/하인도/인도짱 의 홈페이지] 저만의 공간입니다. 다양한 소재들을 나열하는 아주 단순 무식한 홈페이지 입니다. 다양한 문서 자료도 있겠지만, 저의 푸념들도 있답니다.

  • «
  • 1
  • »
250x250

블로그 내에 소스 코드 삽입 이사온 기념 스킨도... RSS 전문 기능 비활성화 관련. 스킨 바꾸어 보았습니다. 서버 파일 정리 좀 했습니다.

«   2025/06   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

블로그 개발환경 친구 2010 me2dayzm windows 협업 것 Azure MOSS 2007 매뉴얼 moss 비스킷 Tutorial 좀 Visual Studio 불만 수 twi2me me2photo WSS java Buscuit 인터파크 지름신 me2sms Google Apps Engine 오류 SharePoint e-book

  • Total :
  • Today :
  • Yesterday :

Copyright © 2015-2025 Socialdev. All Rights Reserved.

Copyright © 2015-2025 Socialdev. All Rights Reserved.

티스토리툴바