방법: 브라우저에서 XML Web services 액세스
이 항목은 레거시 기술과 관련된 것입니다. 이제 XML Web services와 XML Web services 클라이언트는 다음을 사용하여 만들어야 합니다. Windows Communication Foundation.
ASP.NET을 사용하여 만든 웹 서비스를 게시한 후 브라우저에서 HTTP-GET 또는 HTTP-POST를 사용하여 호출함으로써 해당 기능을 테스트할 수 있습니다. 브라우저에서 .asmx 파일을 액세스한 다음 웹 서비스 메서드에 대한 하이퍼링크를 클릭하거나, .asmx URL에 쿼리 문자열을 추가하여 개별 메서드를 직접 액세스합니다.
참고: |
---|
기본적으로 ASP.NET을 사용하여 만든 웹 서비스는 SOAP가 아닌 XML이 응답으로 반환되는 HTTP-GET 및 HTTP-POST 구현과 SOAP over HTTP를 비롯하여 다양한 프로토콜을 지원할 수 있습니다. |
HTTP-GET을 사용하여 브라우저에서 웹 서비스를 테스트하려면
웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 XML Web Services 게시 및 배포를 참조하십시오.
웹 브라우저에 액세스한 후 주소 표시줄에 웹 서비스에 대한 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 설명 페이지를 표시합니다.
웹 서비스의 HTML 설명 페이지에는 특정 웹 서비스에서 지원하는 모든 웹 서비스 메서드가 표시됩니다. 원하는 웹 서비스 메서드에 연결하고 필요한 매개 변수를 입력하여 메서드를 테스트하고 해당 XML 응답을 확인합니다.
HTTP-GET을 사용하여 브라우저에서 웹 서비스 메서드를 직접 테스트하려면
웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 XML Web Services 게시 및 배포를 참조하십시오.
웹 브라우저에 액세스한 후 주소 표시줄에 웹 서비스 메서드에 대한 URL을 다음과 같은 형식으로 입력합니다.
https://servername/vdir/webservicename.asmx/Methodname?parameter=value
매개 변수 값 servername
웹 서비스가 배포되는 서버의 이름입니다.
Apppath
가상 디렉터리의 이름과 웹 응용 프로그램 경로의 나머지 부분입니다.
webservicename.asmx
웹 서비스 .asmx 파일의 이름입니다.
Methodname
웹 서비스에서 공개하는 public 메서드의 이름입니다. 이 값을 비워 두면 .asmx 파일에서 사용할 수 있는 각 public 메서드가 나열된 웹 서비스의 설명 페이지가 표시됩니다. 이 매개 변수는 선택 사항입니다.
parameter
메서드에 필요한 매개 변수의 이름과 값입니다. 이 값을 비워 두면 .asmx 파일에서 사용할 수 있는 각 public 메서드가 나열된 웹 서비스의 설명 페이지가 표시됩니다. 이 매개 변수는 선택 사항입니다.
참고: 이 구문의 웹 서비스 메서드 이름은 대/소문자를 구분하지만, 서버, 프로젝트 및 웹 서비스 이름은 대/소문자를 구분하지 않습니다. 예를 들어, 이전 절차의
StockServices
웹 서비스에GetQuote
라는 웹 서비스 메서드가 포함되어 있고, 웹 서비스 메서드에서 주식 기호를 매개 변수로 허용하여 가격이 배정밀도 부동 소수로 반환된다고 가정합니다. 이 메서드를 테스트하려면 브라우저의 주소 표시줄에 다음 HTTP-GET 요청을 입력합니다.http://<servername>/apppath/StockServices.asmx/GetStockQuote?tickerName=MSFT
서버에서 XML 문서를 포함하는 응답을 보내고 XML 문서가 브라우저에 표시됩니다.
GetQuote
예제의 경우 요청한 주식의 현재 가격이 XML에 포함됩니다. 결과는 다음과 같습니다.<?xml version="1.0" ?>
<double>74.5</double>
HTTP-POST를 사용하여 브라우저에서 웹 서비스를 테스트하려면
웹 서버에 웹 서비스를 배포합니다. 자세한 내용은 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
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
데이터를 웹 서비스 메서드에 다시 게시할 수 있도록 전송 단추를 추가합니다.
웹 브라우저에 액세스한 다음 이전 단계에서 만든 HTML 문서에 대한 URL을 입력합니다.
이전 단계에서 만든 HTML 문서가 표시됩니다.
텍스트 상자에 해당 웹 서비스 메서드 값을 입력하고 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 클라이언트 빌드
웹 서비스 검색