다음을 통해 공유


방법: 브라우저에서 XML Web services 액세스

이 항목은 레거시 기술과 관련된 것입니다. 이제 XML Web services와 XML Web services 클라이언트는 다음을 사용하여 만들어야 합니다. Windows Communication Foundation.

ASP.NET을 사용하여 만든 웹 서비스를 게시한 후 브라우저에서 HTTP-GET 또는 HTTP-POST를 사용하여 호출함으로써 해당 기능을 테스트할 수 있습니다. 브라우저에서 .asmx 파일을 액세스한 다음 웹 서비스 메서드에 대한 하이퍼링크를 클릭하거나, .asmx URL에 쿼리 문자열을 추가하여 개별 메서드를 직접 액세스합니다.

45fez2a8.note(ko-kr,VS.100).gif참고:
기본적으로 ASP.NET을 사용하여 만든 웹 서비스는 SOAP가 아닌 XML이 응답으로 반환되는 HTTP-GET 및 HTTP-POST 구현과 SOAP over HTTP를 비롯하여 다양한 프로토콜을 지원할 수 있습니다.

HTTP-GET을 사용하여 브라우저에서 웹 서비스를 테스트하려면

  1. 웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 XML Web Services 게시 및 배포를 참조하십시오.

  2. 웹 브라우저에 액세스한 후 주소 표시줄에 웹 서비스에 대한 URL을 다음과 같은 형식으로 입력합니다.

    https://servername/apppath/webservicename.asmx
    

    경로 부분

    servername

    웹 서비스가 배포된 서버의 이름입니다.

    Apppath

    가상 디렉터리의 이름과 웹 응용 프로그램 경로의 나머지 부분입니다.

    webservicename.asmx

    웹 서비스 .asmx 파일의 이름입니다.

    예를 들어, StockServices라는 웹 서비스를 게시했다고 가정합니다. 게시된 서비스의 기본 URL은 http://<servername>/apppath/StockServices.asmx입니다. 브라우저의 주소 표시줄에 이 HTTP-GET 요청을 입력하여 이 서비스를 테스트할 수 있습니다.

    http://<servername>/apppath/StockServices.asmx
    

    서버는 이 요청에 대한 응답으로 웹 서비스의 HTML 설명 페이지를 표시합니다.

  3. 웹 서비스의 HTML 설명 페이지에는 특정 웹 서비스에서 지원하는 모든 웹 서비스 메서드가 표시됩니다. 원하는 웹 서비스 메서드에 연결하고 필요한 매개 변수를 입력하여 메서드를 테스트하고 해당 XML 응답을 확인합니다.

HTTP-GET을 사용하여 브라우저에서 웹 서비스 메서드를 직접 테스트하려면

  1. 웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 XML Web Services 게시 및 배포를 참조하십시오.

  2. 웹 브라우저에 액세스한 후 주소 표시줄에 웹 서비스 메서드에 대한 URL을 다음과 같은 형식으로 입력합니다.

    https://servername/vdir/webservicename.asmx/Methodname?parameter=value
    

    매개 변수

    servername

    웹 서비스가 배포되는 서버의 이름입니다.

    Apppath

    가상 디렉터리의 이름과 웹 응용 프로그램 경로의 나머지 부분입니다.

    webservicename.asmx

    웹 서비스 .asmx 파일의 이름입니다.

    Methodname

    웹 서비스에서 공개하는 public 메서드의 이름입니다. 이 값을 비워 두면 .asmx 파일에서 사용할 수 있는 각 public 메서드가 나열된 웹 서비스의 설명 페이지가 표시됩니다. 이 매개 변수는 선택 사항입니다.

    parameter

    메서드에 필요한 매개 변수의 이름과 값입니다. 이 값을 비워 두면 .asmx 파일에서 사용할 수 있는 각 public 메서드가 나열된 웹 서비스의 설명 페이지가 표시됩니다. 이 매개 변수는 선택 사항입니다.

    45fez2a8.note(ko-kr,VS.100).gif참고:
    이 구문의 웹 서비스 메서드 이름은 대/소문자를 구분하지만, 서버, 프로젝트 및 웹 서비스 이름은 대/소문자를 구분하지 않습니다.

    예를 들어, 이전 절차의 StockServices 웹 서비스에 GetQuote라는 웹 서비스 메서드가 포함되어 있고, 웹 서비스 메서드에서 주식 기호를 매개 변수로 허용하여 가격이 배정밀도 부동 소수로 반환된다고 가정합니다. 이 메서드를 테스트하려면 브라우저의 주소 표시줄에 다음 HTTP-GET 요청을 입력합니다.

    http://<servername>/apppath/StockServices.asmx/GetStockQuote?tickerName=MSFT

  3. 서버에서 XML 문서를 포함하는 응답을 보내고 XML 문서가 브라우저에 표시됩니다. GetQuote 예제의 경우 요청한 주식의 현재 가격이 XML에 포함됩니다. 결과는 다음과 같습니다.

    <?xml version="1.0" ?>

    <double>74.5</double>

HTTP-POST를 사용하여 브라우저에서 웹 서비스를 테스트하려면

  1. 웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 XML Web Services 게시 및 배포를 참조하십시오. 이 절차에서는 https://www.contoso.com 사이트의 가상 루트에서 액세스할 수 있는 math.asmx 파일로 배포되는 다음 웹 서비스를 예제로 사용합니다.

    <%@ WebService Language="C#" Class="Math" %>
    using System.Web.Services;
    public class Math : WebService {
         [ WebMethod ]
         public int Add(int num1, int num2) {
              return num1+num2;
         }
    
         [ WebMethod ]
         public int Subtract(int num1, int num2) {
              return num1-num2;
         }
    }
    
    <%@ WebService Language="VB" Class="Math" %>
    Imports System.Web.Services
    
    Public Class Math
        Inherits WebService
    
        <WebMethod> _
        Public Function Add(num1 As Integer, num2 As Integer) As Integer
            Return num1 + num2
        End Function    
    
        <WebMethod> _
        Public Function Subtract(num1 As Integer, num2 As Integer) As Integer
            Return num1 - num2
        End Function
    End Class
    
  2. method 특성을 POST로 설정한 폼을 사용하여 HTML 페이지를 만듭니다. 다음 형식을 사용합니다.

       <form method=POST action='https://www.contoso.com/math.asmx/Subtract'>
           <input type="text" size="5" name='num1'\"></td> -
           <input type="text" size="5" name='num2'\"></td> =
           <input type=submit value="Subtract"> </td>
       </form>
    

    매개 변수

    method

    POST. HTTP-POST를 사용하여 웹 서비스를 테스트하려면 POST를 사용합니다.

    action

    웹 서비스 메서드에 대한 URL입니다. 이전 예제에서 math.asmx는 웹 서비스이고 Subtract는 웹 서비스 메서드입니다.

    type="text"

    웹 서비스 메서드의 각 매개 변수에 대해 type 특성을 "text"로 설정하여 input 태그를 만듭니다. 이 태그를 사용하여 텍스트 입력 컨트롤에 매개 변수를 입력할 수 있습니다.

    name='num1'

    웹 서비스 메서드 매개 변수의 이름입니다. 입력 컨트롤을 웹 서비스 메서드에 있는 매개 변수의 개수만큼 폼에 추가합니다. 예를 들어, 웹 서비스 메서드에 세 개의 매개 변수가 있는 경우 name 특성이 해당 매개 변수의 이름으로 설정된 세 개의 입력 컨트롤이 필요합니다.

    type=submit

    데이터를 웹 서비스 메서드에 다시 게시할 수 있도록 전송 단추를 추가합니다.

  3. 웹 브라우저에 액세스한 다음 이전 단계에서 만든 HTML 문서에 대한 URL을 입력합니다.

    이전 단계에서 만든 HTML 문서가 표시됩니다.

  4. 텍스트 상자에 해당 웹 서비스 메서드 값을 입력하고 submit 단추를 클릭합니다.

    예를 들어, 다음 예제의 Subtract 웹 서비스 메서드에 대한 두 개의 텍스트 상자에 6을 입력한 다음 3을 입력하면 다음과 같은 결과가 반환됩니다.

    <?xml version="1.0" ?> 
    <int xmlns="http://tempuri.org/">3</int>
    

참고 항목

작업

방법: ASP.NET을 사용하여 만든 기존 XML Web services 탐색
방법: 브라우저에서 XML Web services 액세스

개념

XML Web services 클라이언트 빌드
웹 서비스 검색

기타 리소스

XML Web services에 대한 클라이언트 만들기