웹 서비스 찾기

업데이트: 2007년 11월

웹 서비스의 공급자인 동시에 소비자인 경우에는 웹 서비스의 위치와 기능에 대해 알고 있을 것입니다. 그러나 다른 사람이 제공하는 웹 서비스에 액세스할 경우도 있습니다. 이런 경우에는 목적에 맞는 웹 서비스가 실제로 있는지조차 모를 수도 있습니다.

웹 참조

코딩 모델을 단순화기 위해 관리 코드로 작성된 응용 프로그램에서는 웹 참조를 사용하여 각 웹 서비스를 로컬로 표시합니다. 프로젝트에 웹 참조를 추가하려면 웹 참조 추가 대화 상자를 사용합니다. 이 대화 상자에서 로컬 서버, Microsoft UDDI 디렉터리 및 인터넷 전체를 탐색할 수 있습니다. 웹 서비스 공급자는 웹 서비스 소비자가 검색하여 소비하는 웹 서비스 디렉터리에 웹 서비스를 공개합니다. 자세한 내용은 XML Web services 디렉터리를 참조하십시오.

웹 참조 추가 대화 상자에서는 사용자가 이 대화 상자에서 이동하는 웹 사이트 상의 적절한 웹 서비스를 찾기 위해 웹 서비스 검색 프로세스를 사용합니다. 이 대화 상자에서는 WSDL(Web Services Description Language) 문법에 맞는 웹 서비스 설명 문서를 찾도록 디자인된 알고리즘을 사용하여 해당 주소의 웹 사이트를 조사합니다. 자세한 내용은 XML Web services 검색XML Web services 설명을 참조하십시오.

응용 프로그램에서 액세스할 웹 서비스를 웹 참조 추가 대화 상자를 통해 찾은 다음 참조 추가 단추를 클릭하면 서비스 설명이 로컬 컴퓨터에 다운로드된 다음 선택한 웹 서비스에 대한 프록시 클래스가 생성됩니다. 프록시 클래스에는 노출된 각 웹 서비스 메서드를 동기적 및 비동기적으로 호출하는 메서드가 포함됩니다. 이 클래스는 로컬 .wsdl 파일의 코드 숨김 파일에 있습니다. 자세한 내용은 Visual Studio의 웹 참조웹 참조 추가 대화 상자를 참조하십시오.

웹 참조 URL 속성을 사용하여 웹 서비스에 대한 URL을 지정할 수 있습니다. 웹 참조 추가는 기본적으로 이 속성을 사용자가 선택하는 웹 서비스의 URL로 설정하는데, 이것은 정적 URL입니다. 웹 참조에는 정적 URL이나 동적 URL을 사용할 수 있습니다.

URL 동작을 정적 기본값으로 두는 경우 프록시 클래스는 사용자가 해당 클래스의 인스턴스를 만들 때 하드 코딩된 URL을 사용하여 URL 속성을 설정합니다.

웹 참조의 URL 동작 속성을 '동적'으로 설정하면 응용 프로그램에서 런타임에 응용 프로그램 구성 파일의 appSettings 요소(일반 설정 스키마)로부터 URL을 가져옵니다. 웹 참조를 추가한 후 동적 URL을 지정하면 구성 파일로부터 URL을 가져오도록 프록시 클래스가 업데이트됩니다.

<appSettings>
   <add key="myApplication.myServer.Service1"
        value="http://myServer/myWebService/Service1.asmx"/>
</appSettings>

프록시 개체의 인스턴스를 만들면 응용 프로그램에서 개체의 URL 속성도 설정할 수 있습니다.

프록시에서 사용하는 URL에 관계없이 이것은 웹 참조를 추가할 때 사용하는 것과 일치하는 WSDL을 따르는 웹 서비스에 대한 것이어야 합니다.

웹 참조를 추가할 때 프록시 클래스를 만들기 위해 Visual Studio에서 사용하는 도구와 유사한 도구(웹 서비스 설명 언어 도구)를 사용하여 프록시 클래스를 생성할 수 있습니다. 런타임이 아니면 클라이언트에서 액세스할 수 없는 네트워크 상의 위치에 웹 서비스가 있는 경우처럼, Visual Studio가 설치된 컴퓨터에서 웹 서비스에 액세스할 수 없을 때 이 방법이 필요합니다. 그런 다음 도구에서 만든 파일을 직접 응용 프로그램 프로젝트에 추가합니다. 자세한 내용은 방법: 웹 서비스 프록시 생성을 참조하십시오.

참고 항목

개념

XML Web services 클라이언트 빌드

XML Web services 설명

기타 리소스

관리 코드의 웹 서비스 액세스