2011-05-04 5 views
0

[WebMethods] 및 [SoapHeader ("Auth")]와 함께 asmx 파일을 사용하는 프로젝트가 있습니다. SOAP 사용 경험이 없으며 아직 어떻게 작동하는지 이해하지 못합니다.SOAP 헤더는 ASMX 웹 서비스에서 어떻게 작동합니까?

코드를 살펴보면 헤더와 같은 이름의 변수를 사용할 수 있으며 데이터가 포함되어 있음을 알게되었습니다. 데이터는 헤더로 어떻게 보내 집니까? 그거 어디서 났어?

답변

1

데이터는 SOAP 봉투의 <soap:Header> 섹션에있는 XML에서 가져옵니다.

+0

그래서 SOAP 요청을 보내고 그 속성이 헤더를 잡았습니까? 그 맞습니까? – chobo

+2

다소 차이가 있습니다. 하나 이상의 헤더가있을 수 있습니다. 일치하는 헤더 만 잡아 당깁니다. –

2

데이터는 SoapHeader에서 파생되는 클래스를 사용하여 헤더로 보내집니다. 이 클래스는 웹 서비스 클래스의 속성으로 선언됩니다. 그런 다음 웹 메소드에서 실제 메소드를 처리하기 전에이 특성의 인증 정보를 점검합니다.

간단한 구현은 여기 http://www.codeproject.com/KB/cpp/authforwebservices.aspx

은 다음 MSDN 링크가 하나 http://msdn.microsoft.com/en-us/library/9z52by6a.aspx 더 정교한 것 다른 유사한 기술에 대해 알려줍니다 찾을 수 있습니다.

헤더에 데이터를 전달하는 기본 아이디어는 동일하게 유지됩니다.

관련 문제