안녕하세요.
책에 보니 soap 라고 해서 인터넷에서 공개된 함수를 사용할 수 있게 되어 있더라구요.
델파이의 wdsl import 기능을 통해서 쉽게 함수를 사용할 수 있더라구요.
그런데 상세한 기능을 제어하려니 힘듭니다. 책에 보아도 내용도 깊이있게 없고,
인터넷에서 soap관련 문서는 거의 비슷한 것 같구요. 정보있는 곳 아시면 알려주세요. ㅋㅋ
[질문]
1) import 후 xml의 함수를 호출 하기전에 xml Header 부분에 값을 넣고 싶은데 어떻게 해야 할지 모르겠습니다.
C에서는 Import된부분이 클래스로 되어서 헤더에 그냥 값을 넣던데, 클래스를 사용하던데.
2) 델파이에서는Wdsl import된 pas 파일을 클래스 처럼 사용할 수 있나요?
XML 해더를 추가 하려면요.
ISoapHeaders 클래스를 이용해서 사용하시면 됩니다.
H라는 클래스( ISoapHeaders 상속받은 ) 변수를 하나를 만들어서 값을 넣고
svc라는 interface 를 해더 형식으로 변환 해서 넣어주고 주어진 함수를 호출 하면 됩니다.
설명을 잘 못하는데, 델파이에서 제공하는 예제소스보시면 잘되어 있습니다. 아래소스도 일부분입니다.
SOAPHeaders 폴더에 있습니다.
처음 볼때는 이해가 안되었는데 계속보니 조금씩 이해가 되네요.
즐거운 마지막 2007년 되세요.
<!--CodeS-->
svc := GetService;
H := AuthHeader.Create;
try
H.AccNumber := FAuthKey;
H.TimeStamp := DateTimeToXSDateTime(FTimeStamp, True);
{ Add the Header to the outgoing message }
if UseHeader then
(svc as ISOAPHeaders).send(H);
{ Call the getBalance method }
BalanceEdit.Text := CurrToStrF(svc.getBalance, ffCurrency, 2);
finally
H.Free
end;
<!--CodeE-->