스크립트된 새 SOAP 웹 서비스 작성

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기2분
  • 다음 예제에 따라 스크립트된 새 SOAP 웹 서비스를 작성하십시오.

    웹 서비스 제공자 - 스크립트 기반 플러그인이 활성화되면 새 모듈 인 스크립트 기반 웹 서비스를시스템 웹 서비스 애플리케이션에서 사용할 수 있습니다.

    그림 1. Scripted SOAP Web Services

    스크립트된 SOAP 웹 서비스

    예제 1: 시스템 속성 검색

    첫 번째 단계는 수신 및 반환 매개 변수를 정의하는 것입니다. 입력 매개변수(Input Parameters) 및 출력 매개변수(Output Parameters) 에 항목을 추가하면 됩니다. 이러한 매개 변수는 의미 있는 WSDL을 구성하고 표시하는 데 사용되며 실제 웹 서비스 자체를 처리하는 기능에 추가되지는 않습니다.

    그림 2. GetProperty 입력 및 출력 매개변수

    GetProperty 입력 매개변수

    GetProperty 출력 매개변수

    매개 변수는 웹 서비스의 스크립트에서 참조됩니다. 입력 매개변수는 다음 구문을 사용하여 검색됩니다.
    var a= request.property;
    출력 매개변수는 다음 구문을 사용하여 설정됩니다.
    response.property="ABC";

    다음 예제에서는 시스템 속성을 검색하고 SOAP 응답의 일부로 반환하는 방법을 보여 줍니다. 이 예제에서는 기본 ServiceNow 시스템 직접 웹 서비스가 수행할 수 없는 특정 작업을 수행하기 위해 사용자 정의 스크립트 웹 서비스를 작성하는 방법을 보여줍니다.

    그림 3. GetProperty 웹 서비스

    GetProperty 웹 서비스

    예제 2: Blackberry 주문

    직접 웹 서비스는 테이블과 테이블의 데이터에서 작동합니다. 다음 예제에서는 스크립트된 웹 서비스를 호출하여 Blackberry 주문과 같은 비즈니스 솔루션을 시작하는 방법을 보여 줍니다. 다음 입력 및 출력 매개변수는 Blackberry 예제를 지원합니다.

    그림 4. 입력 출력 Blackberry

    OrderBlackBerry 입력 매개변수

    OrderBlackBerry 출력 매개변수

    이 스크립트는 위의 매개변수를 사용하여 서비스 카탈로그 장바구니에 Blackberry를 추가하고 주문하는 방법을 보여줍니다. 요청 번호는 SOAP 응답의 request_number 필드에 반환됩니다.
    var cart = new Cart();
    var item = cart.addItem('e2132865c0a8016500108d9cee411699');
    cart.setVariable(item,'original', request.phone_number);
     
    // set the requested for
    var gr = new GlideRecord("sys_user");
    gr.addQuery("user_name", request.requested_for);
    gr.query();
    
    if(gr.next()){
      var cartGR = cart.getCart();
      cartGR.requested_for = gr.getUniqueValue();
      cartGR.update();
    }
     
    var rc = cart.placeOrder();
    response.request_number= rc.getValue('number');