보통 Microsoft.XMLHTTP 로 정형화된 XML
텍스트가 아니고서는 결과를 "깨진" 텍스트로 받게 됩니다.
그렇다고... 실제로 데이터가 엉뚱하게 변환되었을 리는
없을 테고.... 그냥 2진 데이터였겠죠.
아래의 코드에서 보면, 이진데이터를 아스키 코드로
변환해주는 VBScript 함수를 볼 수 있습니다.
그걸로, XMLHTTP::responseBody 속성을
해석해 주면,
정형화되지 않은 일반 텍스트 ( 한글포함 ) 문서까지도
정상적으로 반환받을 수 있습니다.
------ 뉴스그룹 보다가 퍼옴
------
<html>
<head>
<script language=jscript>
function
window.onload()
{
var httpReq = new ActiveXObject(
"Microsoft.XMLHTTP" );
httpReq.open( "GET", "http://webdic.ybmsisa.com/dic_search.asp", false
);
httpReq.send();
alert( httpReq.responseBody ); // 여기서는 텍스트가 깨진체로
보여지지만.
var text = BinDecode( httpReq.responseBody );
alert( text ); // 여기서는 일반 ascii 텍스트로 번역되어 정상적으로
출력
}
</script>
<script
language="vbscript">
'-----------------------------------------
'
BinDecode (바이너리 -> 아스키 변환)
' mongmong - 2003.
2
'-----------------------------------------
Public Function
BinDecode(byVal binData)
Dim i, byteChr, strV
For
i = 1 to LenB(binData)
byteChr =
AscB(MidB(binData,i,2))
If byteChr > 127
Then
i = i + 1
strV = strV
& Chr("&H" & Hex(byteChr) &
Hex(AscB(MidB(binData,i,2))))
Else
strV
= strV & Chr(byteChr)
End
if
Next
BinDecode = strV
End
Function
</script>
</head>
<body>
<FONT
face="굴림"></FONT>
</body>
</html>
[최초 등록일: ]
[최종 수정일: 1/26/2004]