ServiceNow Sdk

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기5분
  • SDK(소프트웨어 개발 키트)를 ServiceNow® 사용하여 JavaScript 모듈 및 타사 라이브러리를 애플리케이션에 로컬로 추가하고 변경 사항을 Now Platform.

    ServiceNow SDK 개요

    SDK를 ServiceNow 사용하면 개발자는 사용자 지정 모듈 및 타사 라이브러리를 시각적 스튜디오 코드 사용하여 범위가 지정된 애플리케이션을 생성 및 수정하고 이러한 애플리케이션을 릴리스의 Washington DC 비프로덕션 인스턴스에 배포할 수 있습니다. 인스턴스 외부에서 ServiceNow 애플리케이션을 작성 ServiceNow 하면 업계 표준 개발 프랙티스와 익숙한 도구를 사용할 수 있으며 런타임이 아닌 빌드 타임에 오류를 포착할 수 있습니다.

    SDK를 사용하여 만들거나 변환한 응용 프로그램에는 소스 코드 파일 및 응용 프로그램의 데이터베이스 레코드에서 생성된 메타데이터 XML 파일이 포함됩니다. package.json 파일은 Node.js 응용 프로그램 또는 npm(노드 패키지 관리자) 패키지와 유사한 응용 프로그램 구조를 정의합니다.

    SDK에는 인스턴스와 로컬 애플리케이션 간의 변경 사항을 관리하기 위한 명령줄 인터페이스(CLI)가 포함되어 있습니다. 간단한 CLI 명령을 사용하여 애플리케이션을 생성, 변환, 빌드, 배포 및 가져올 수 있습니다.

    ServiceNow SDK 워크플로우

    다음 인포그래픽은 개발자가 SDK와 함께 JavaScript 모듈 및 타사 라이브러리를 사용하는 애플리케이션 개발을 시작할 수 있는 워크플로를 ServiceNow 보여줍니다.

    그림 1. SDK를 ServiceNow 사용하여 애플리케이션 개발
    로컬 환경에서 SDK를 사용하여 애플리케이션을 개발하고 인스턴스와 인터페이스하는 프로세스입니다. 자세한 내용은 다음 설명을 참조하십시오.
    1. 관리자 역할이 있는 개발자가 SDK를 설치합니다.
    2. CLI를 사용하여 개발자는 now-sdk auth 명령으로 로컬 환경과 인스턴스 간에 인터페이스하기 위해 비프로덕션 인스턴스에 인증합니다.
    3. 개발자는 범위가 지정된 애플리케이션을 만들거나(now-sdk create) SDK와 함께 사용하기 위해 인스턴스에서 기존 범위가 지정된 애플리케이션을 변환(now-sdk convert)합니다.
    4. 시각적 스튜디오 코드에서 개발자는 사용자 정의 JavaScript 모듈을 작성하고 타사 라이브러리를 추가합니다.
    5. 개발자는 소스 코드를 컴파일하고 이를 인스턴스의 데이터베이스 메타데이터로 변환하고 배포 가능한 패키지(now-sdk 빌드)를 생성하는 애플리케이션을 빌드합니다.
    6. 개발자가 애플리케이션을 인스턴스에 배포합니다(now-sdk 배포).
    7. 다른 사용자는 인스턴스의 애플리케이션 메타데이터를 계속 수정할 수 있으며, 개발자는 SDK를 통해 다른 모듈 또는 스크립트의 모듈에서 코드를 재사용할 수 있습니다.
    8. 개발자는 인스턴스에서 애플리케이션을 가져와 애플리케이션 메타데이터에 대한 최신 업데이트를 로컬에서 가져옵니다(now-sdk 가져오기).

    ServiceNow SDK 혜택

    이점 기능 사용자
    사용자 지정 JavaScript 모듈을 작성하여 범위가 지정된 애플리케이션에서 코드를 구성하고 재사용합니다. 개발자
    기존 타사 JavaScript 유틸리티를 활용하여 기존 오픈 소스 기능을 다시 작성하지 않도록 합니다.
    생산성, 효율성 및 최적화를 향상시켜 애플리케이션의 가치 실현 시간을 단축합니다.
    TypeScript, 형식 안전성, Intellisense 및 종속성 적용을 비롯한 업계 표준 JavaScript 기능과 함께 친숙한 개발 도구를 사용합니다. SDK와 함께 ServiceNow TypeScript 사용

    애플리케이션 구조

    SDK를 사용하여 만든 응용 프로그램에는 다음과 같은 디렉터리와 파일이 포함됩니다.

    로컬 환경의 응용 프로그램 디렉터리 및 파일.

    주:
    개발자는 소스 제어에서 dist, node_modulestarget 디렉터리와 . 로 시작하는 모든 파일 및 디렉터리를 수동으로 편집하거나 유지해서는 안 됩니다.
    .메타 데이터

    기존 ServiceNow 애플리케이션과 동일한 디렉터리 구조로 구성된 테이블 스키마 및 비즈니스 규칙과 같은 애플리케이션의 메타데이터 XML 파일을 포함하는 디렉터리입니다.

    이 디렉터리에는 기본적으로 샘플 비즈니스 규칙(sys_script_<sysID>.xml)이 포함되어 있으며, 지정된 경우 샘플 테이블(<scope>_to_do.xml)이 포함되어 있습니다.

    주:
    애플리케이션 메타데이터는 로컬이 아닌 인스턴스에서 편집해야 합니다.
    .Nwo
    빌드 및 배포 프로세스에 대한 캐싱 및 메트릭 정보를 포함하는 디렉터리입니다.
    Dist
    패키징할 빌드 아티팩트가 포함된 디렉터리입니다.
    node_modules
    애플리케이션이 종속된 외부 공급업체 Node.js 모듈이 포함된 디렉터리입니다. 이 디렉터리는 패키지가 npm과 함께 설치될 때 추가됩니다.
    Src
    myfunction.js라는 샘플 모듈을 포함하여 모듈 코드(JavaScript 또는 TypeScript 파일)가 포함된 디렉터리입니다.
    대상
    인스턴스에 업로드할 배포 가능 패키지가 들어 있는 디렉터리입니다.
    .eslintrc.json
    ESLint 구성을 포함하는 파일입니다. ESLint는 애플리케이션 코드의 문제를 식별하고 수정하는 데 도움이 됩니다.
    package.json

    애플리케이션, ServiceNow 구성, 사용자 지정 또는 외부 공급업체 모듈 의존성에 대한 정보가 들어 있는 파일입니다. package.json 파일은 응용 프로그램의 기본 디렉터리에 있어야 합니다.

    package.json 파일에서 ServiceNow 응용 프로그램 구성은 now 개체에 정의되어 있습니다.

    "now": {
            "scope": "x_snc_example_app",
            "scopeId": "2f8400eb07426110f736e28f69d3017a",
            "moduleDir": "src"
        }
    다음 매개변수를 사용하여 package.json 파일에서 애플리케이션의 디렉터리 구조를 구성할 수 있습니다.
    모듈디렉토리
    모듈 코드(JavaScript 또는 TypeScript 파일)가 포함된 디렉터리입니다. 기본값은 src입니다.
    metadataDir
    응용 프로그램의 메타데이터를 XML 파일로 포함하는 디렉터리입니다. 기본값은 .metadata입니다.
    compileOutputDir (컴파일 출력 디렉토리)
    애플리케이션을 빌드할 때 패키징할 빌드 아티팩트를 출력할 디렉터리입니다. 기본값은 dist/app입니다.
    cpackOutputDir (영문)
    애플리케이션을 빌드할 때 인스턴스에 업로드할 zip 파일을 출력하는 디렉터리입니다. 기본값은 target입니다.