스크립트된 새 SOAP 웹 서비스 만들기

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

    웹 서비스 제공자 - Scripted 플러그인이 활성화되면 System Web Services 애플리케이션에서 새 모듈 Scripted Web Services를 사용할 수 있습니다.

    그림 1. Scripted SOAP Web Services

    Scripted SOAP Web Services

    예제 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

    순서BlackBerry 입력 매개변수

    순서BlackBerry 출력 매개변수

    이 스크립트는 위의 매개변수를 사용하여 서비스 카탈로그 쇼핑 카트에 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');