상위 토픽: URL을 사용하여 공개된 어플리케이션으로 데이터 전송하기

노트 이 토픽의 개념에 대한 더 자세한 정보는 웹 서비스 개요길라잡이를 참조하십시오. LabVIEW 웹 서비스는 LabVIEW Full Development System과 LabVIEW Professional Development System에서만 사용 가능합니다.

웹 클라이언트는 URL을 사용하여 공개된 웹 서비스와 데이터를 교환합니다. URL 맵핑과 쿼리 문자열은 URL의 일부입니다:

  • URL 맵핑—호스트 웹 서버가 HTTP 요청을 특정한 HTTP 메소드 VI 또는 정적 파일로 보내는데 사용하는 식별자로 작용합니다. 각 HTTP 메소드 VI 및 정적 파일은 하나의 URL 맵핑을 갖습니다.
  • 쿼리 문자열—값을 식별하고 HTTP 메소드 VI의 커넥터 팬의 입력 파라미터에 할당합니다. 컨트롤에 할당할 물음표, 컨트롤 라벨, 등호 부호 및 값을 추가하여 URL 맵핑의 끝에 입력 파라미터를 추가할 수 있습니다.

Add.vi라는 이름의 HTTP 메소드 VI에 대해서, LabVIEW는 자동으로 URL 맵핑을 /Add라고 정의합니다. VI가 입력 ab를 포함하는 경우, URL 및 쿼리 문자열 /Add?b=2&a=3은 값을 입력에 할당합니다. 이 예에서, 클라이언트가 사용하는 URL은 http://127.0.0.1:8080/WebService/Add?b=2&a=3입니다.

노트 기본 URL 맵핑을 사용하는 대신 URL 맵핑을 사용자 정의할 수 있으며, 이는 HTTP 메소드 VI가 입력 파라미터에 값을 할당하는 방식에 영향을 끼칩니다.

쿼리 문자열에서 입력 파라미터 값 생략하기

클라이언트는 쿼리 문자열에서 어떠한 입력 파라미터도 생략할 수 있습니다. 클라이언트가 입력 파라미터 값을 생략하는 경우, 웹 서비스는 VI에 저장된 입력 터미널의 기본값을 사용합니다. 예를 들어, ab라는 라벨이 있는 컨트롤을 갖는 Add.vi라는 이름의 HTTP 메소드 VI의 경우, 다음 URL 맵핑과 쿼리 문자열을 사용하는 HTTP 요청은 유효합니다:

  • /Add?b=2&a=3
  • /Add?a=3 (b 컨트롤의 기본값 사용)
  • /Add?b=2 (a 컨트롤의 기본값 사용)
  • /Add (두 컨트롤 모두의 기본값을 사용)

URL 맵핑 사용자 정의하기

보통 웹 서비스에는 기본 URL 맵핑을 사용할 수 있습니다. 그러나 고급 사용의 경우에는, HTTP 메소드 VI에 대한 URL 맵핑을 사용자 정의해야 할 필요가 있을 수 있습니다. 다음 단계에 따라 HTTP 메소드 VI에 대한 사용자 정의된 URL 맵핑을 설정합니다:

  1. 웹 서비스 프로젝트 아이템에서 마우스 오른쪽 버튼을 클릭한 후 프로퍼티를 선택합니다.
  2. 웹 서비스 프로퍼티 대화 상자의 HTTP 메소드 VI 셋팅 페이지를 탐색합니다.
  3. VI의 테이블에서 URL 맵핑을 사용자 정의하려는 HTTP 메소드 VI를 선택합니다.
  4. URL 맵핑 탭에서, 표준 URL 맵핑 사용에서 확인 표시를 제거하여 URL 텍스트박스를 편집할 수 있도록 합니다. 이제 VI가 속한 웹 서비스 및 해당 웹 리소스의 이름 뒤에 나오는 URL의 부분을 편집할 수 있습니다. 즉, IP 주소, 포트, 웹 서비스 이름 또는 해당 웹 리소스 이름은 편집할 수 없습니다.

포워드 슬래쉬(/)로 시작하고 표준 HTTP 구문을 사용하는 한, URL 맵핑 문자열은 어느 값으로든 설정할 수 있습니다. 연결된 HTTP 메소드 VI에 포워드 슬래쉬(/), 콜론(:), 커넥터 팬 입력의 라벨을 추가하여 URL 맵핑의 끝에 입력 파라미터를 덧붙일 수 있습니다. 이 구문은 파라미터 값을 설정하기 위해 기본 URL 맵핑에 쿼리 문자열을 추가하는 것과는 다릅니다.

/Add/:a/:b는 사용자 정의된 URL 맵핑 문자열의 예입니다. URL 맵핑 문자열 /Add는 URL 맵핑의 베이스이며 /:a/:b는 HTTP 메소드 VI의 입력 파라미터를 설정합니다. URL 맵핑에 HTTP 메소드 VI에 전달할 입력 파라미터가 포함되지 않은 경우, VI는 반드시 모든 입력 터미널의 기본값을 포함해야 합니다.

URL 맵핑을 사용하여 여러 부분 전달하기

HTTP 메소드 VI의 단일 문자열 입력 터미널에 여러 URL 부분을 할당하는 사용자 정의 브라우저 URL을 생성할 수 있습니다. 이 기법은 사용자 정의 브라우저 URL을 사용하여 파일 경로나 계층구조적인 값을 전달할 때 유용합니다.

예를 들어, /:x/*y가 URL 맵핑에 추가될 때 x라는 라벨이 붙은 컨트롤과 y라는 라벨이 붙은 컨트롤에 대한 입력 파라미터를 생성합니다. 그런 다음, URL 맵핑에 추가한 입력 파라미터 /:x/*y에 대응하는 사용자 브라우저 URL에 /test/C/directory와 같은 값을 추가할 수 있습니다. 이 예에서, xtest에 할당되고 yC/directory에 할당됩니다. 1 개가 넘는 부분을 포함하는 입력 파라미터는 사용자 브라우저 URL의 마지막에 있어야 합니다.