프로그램/ASP

ServerXMLHTTP 을 함수로 만들어 사용하자

네오류이 2021. 1. 10. 13:06
728x90
반응형

오늘은 asp에서 ServerXMLHTTP 을 사용하는데 있어 그냥 함수로 하나 만들어서 사용하기 쉽게 만들고자 합니다.

 

이미 알려진 내용이지만 함수화 해서 사용하면 편리할 것 같아 소개합니다.

 

* 소스코드

 

// post 방식으로 전송할 때 사용

function SendPOST(parm_url, parm_post)

    Set xmlHttp = Server.Createobject("MSXML2.ServerXMLHTTP")

    xmlHttp.Open "POST", parm_url, False

    xmlHttp.setRequestHeader "User-Agent", "asp httprequest"

    xmlHttp.setRequestHeader "content-type", "application/x-www-form-urlencoded"

    xmlHttp.Send parm_post

    SendPOST = xmlHttp.responseText

    xmlHttp.abort()

    set xmlHttp = Nothing   

end function

 

// get 방식으로 전송할 때 사용

function SendGet(strUrl)    

Set xmlHttp = Server.Createobject("MSXML2.ServerXMLHTTP")    

xmlHttp.Open "GET", strUrl, False    

xmlHttp.setRequestHeader "User-Agent", "asp httprequest"    

xmlHttp.setRequestHeader "content-type", "application/x-www-form-urlencoded"    

xmlHttp.Send    

SendGet = xmlHttp.responseText    

xmlHttp.abort()    

set xmlHttp = Nothing   

end function

 

* 사용법

 

aaa = SendPOST("http://aaa.com", "parm1=1&parm2=2");

 

사용법은 간단하고 위 2개의 함수를 하나로 만들어 사용해도 되지만 구분을 쉽게 하기 위해 2가지로 만들었습니다.

 

여기에서 중요한 것은 MSXML2.ServerXMLHTTP 인데 당연히 서버에서 msxml 이 설치되어 있어야 하고. MSXML2.ServerXMLHTTP 이거 말고 다른 object 들도 있는데 MSXML2.ServerXMLHTTP 이게 안된다면 다른 것들도 되지 않았습니다. 즉 MSXML2.ServerXMLHTTP 로 호출 시 연동해서 데이터를 가져올 수 있어야 하는데 안된다면 해당 서버 설정이 문제이거나 전송 파라메터가 문제인 경우가 대부분이었습니다.

 

위 방식은 다 동기식이고, 비동기식은 검색을...

그리고 에러 확인은 저 같은 경우는 json, xml 특정태그값이 존재하지 않으면 에러로 처리하기 때문에 따로 확인 하지않았습니다.

728x90
반응형