실전! VB에서 SOAP(클라이언트) 사용하기

  • 준비물
    • VB 제작프로그램(비주얼 스투디오 등)
    • SOAP Toolkit 3.0 [다운로드:MSDN]
  • 단어
    • SOAP : Simple Object Access Protocol
      • XML을 사용하여 통신을 할 때에서 전송하는 객체를 그대로 사용할 수 있도록 한다.
      • SOAP에서 객체가 전송될 때 알아서 바꿔서 전송하고, 전송을 받을 때 알아서 바꿔준다.
  • 기초작업
    • SOAP Toolkit 3.0를 인스톨한다
  • SOAP 기초지식
    • SOAP 는 high-level interface ,low-level interface 로 나뉜다
    • high-level interface : WSDL 을 사용하는 것
    • low-level interface : WDSL 없이 직접 XML로 데이터통신하는 것
  • high-level interface 예제
    • set soapclient = CreateObject("MSSOAP.SoapClient30")
      Call soapclient.mssoapinit("DocSample1.wsdl", "TestService1", "TestServicePort")
      wscript.echo  soapclient.AddNumbers(2,3) '웹서비스에 정의된 메소드 호출
  • low-level interface 예제
    • Dim Serializer As SoapSerializer30 '전송할 데이터를 SOAP XML형태로
      Dim Reader As SoapReader30 '받은 데이터를 XML 형태로
      Set Connector = New HttpConnector30 '해당 주소로 연결
      Connector.Property("EndPointURL") = "http://www.xxxx.com/webservice.php"
      Connector.Connect
      Connector.Property("SoapAction") = "uri:" & Method
      Connector.BeginMessage
      Set Serializer = New SoapSerializer30
      Serializer.Init Connector.InputStream
      MsgBox ("SOAP 통신 데이터생성")
      Serializer.StartEnvelope
      Serializer.StartBody
      Serializer.StartElement "getRecommendation", CALC_NS, , "nstemp"
      Serializer.StartElement "data"
      Serializer.WriteString Text1.Text
      Serializer.EndElement
      Serializer.EndElement
      Serializer.EndBody
      Serializer.EndEnvelope
      Connector.EndMessage
      On Error Resume Next
      MsgBox ("SOAP 통신 결과 출력")
      Set Reader = New SoapReader30
      Reader.Load Connector.OutputStream
      richText.Text = Reader.Body.xml
      MsgBox Reader.Body.xml
  • 참고
    • 2005/05/31 이후로 이 툴킷은 업데이트 되지 않는다
    • .net에 SOAP가 기본으로 포함된다.
    • 위 예제는 똑바르게 동작이 안될겁니다. 참고만 하세요.
댓글
  • No Nickname
    No Comment
  • 권한이 없습니다.
    {{m_row.m_nick}}
    -
목록형 📷 갤러리형
제목
[기본형] HTML (with 부트스트랩5.3 , jquery 3.7, vue.js)
유용한 리눅스(LINUX) 명령어
[공지] 기술 게시판
4.28
4.29
4.30
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
5.19
5.20
5.21
5.22
5.23
5.24
5.25
5.26
5.27
5.28
5.29
5.30
5.31
6.1