[정상적으로 동작하는 샘플 예제]
<%@ Language=VBScript %>
<%
' 네이버에서 날씨정보 가져오기
Set xmlClient = CreateObject("MSXML2.ServerXMLHTTP.4.0")
xmlClient.open "GET", "http://news.naver.com/weather/", False
xmlClient.send
' ADO의 스트림 객체로 처리하기
' [이유] responseText 프라퍼티는 리모트의 응답을 무조건 유니코드로 간주하고 디코딩하므로
' 유니코드로 인코딩되지 않은 것들은 모두 글자가 깨짐
' 따라서 이러한 경우에는 responseText를 직접 사용할 수가 없기 때문에
' 리모트의 응답을 디코딩되지 않은 형태로 받아(responseBody 프라퍼티를 사용하면 됨)
' 적절한 인코딩으로 변환한 뒤에 사용하기 위해 ADO의 스트림 객체로 처리함
Set responseStrm = CreateObject("ADODB.Stream")
responseStrm.Open
' 스트림 객체의 타입을 변경하기 위해선 먼저 스트림의 현재 포지션을 처음으로 지정해야만 됨.
responseStrm.Position = 0
' 먼저 스트림 객체의 타입을 바이너리 타입으로 지정
responseStrm.Type = 1
responseStrm.Write xmlClient.responseBody
' 다시 스트림 객체의 타입을 변경하기 위해 현재 포지션을 처음으로 지정
responseStrm.Position = 0
' 이번에는 스트림 객체의 타입을 텍스트 타입으로 지정
responseStrm.Type = 2
' 원하는 인코딩 이름을 지정
responseStrm.Charset = "euc-kr"
resultStr = responseStrm.ReadText
Response.Write resultStr
Response.End
responseStrm.Close
Set responseStrm = Nothing
Set xmlClient = Nothing
%>
'Scrapbook > 개발 및 프로그래밍' 카테고리의 다른 글
30년 역사의 RAID, 넌 누구니 (0) | 2006.03.15 |
---|---|
ASP에서 이미지 파일을 보호하는 방법 (0) | 2004.08.24 |
[SQL Server] EM에서 예약작업/일정시간에 자료 업데이트 (0) | 2004.07.27 |
[ASP] URLDecode (0) | 2004.07.27 |
[ASP] ADODB.Stream을 이용한 파일 다운로드 (0) | 2004.05.31 |