본문으로 건너뛰기

Gateway


Menubar > Settings > gateway

게이트웨이는 Operation-Routine 에서 운영되고 있는 엔드포인트의 주소를 고정된 URL 로 호출 할 수 있도록 연결하는 기능입니다.
또한 인터페이스 기능을 통해 게이트웨이를 통해 들어온 데이터를 변환하여 Operation-Routine 에 전달 할 수 있습니다.

NOTE

기본 게이트웨이 URL 의 http://${GW 설치주소}:31000/gw/${gateway_url} 입니다.
게이트웨이에 연결 된 Operation-Routine 은 Project -> App List 화면에서 확인 할 수 있습니다.

Gateway List

현재 생성된 게이트웨이 목록을 보여줍니다. 화면 상단의 검색을 통하여 게이트웨이를 검색하거나 추가버튼을 클릭하여 새로운 게이트웨이를 생성할 수 있습니다.

gateway_list

게이트웨이 목록의 정보는 다음과 같습니다.

필드명설명
게이트웨이명게이트웨이의 이름
설명게이트웨이의 설명
조건게이트웨이에 설정된 조건의 수
URLPATH게이트웨이 주소
응답 대기시간게이트웨이 응답 대기 시간
생성 날짜게이트웨이 생성일시

Interface

인터페이스는 게이트웨이에서 요청하는 데이터의 형식이 Text 일 경우 텍스트를 Json 형식으로 변환하거나 Json 일 경우 Json 의 특정 키들을 요청데이터로 변환 데이터의 구조 및 Operation- Routine 에서 응답한 데이터를 변환하는 데이터의 구조를 정의합니다.

gateway_interface

Add / Edit

게이트웨이 목록 화면에서 오른쪽 상단에 있는 인터페이스 버튼을 통하여 인터페이스 관리 화면으로 이동합니다.

인터페이스 관리 화면에서 왼쪽 상단에 있는 인터페이스 추가 버튼을 통하여 새로운 인터페이스를 추가합니다. 추가 후 새로 생성된 인터페이스 항목을 클릭하여 설정을 진행하고 저장 버튼을 눌러 인터페이스를 저장합니다.

필드명설명
인터페이스명새로운 인터페이스의 제목입니다.
데이터 형태인터페이스로 들어오는 데이터의 형식을 정의합니다.
구분자shape 이 Flex Length 타입일 때 구분자를 설정합니다.
요청 구조게이트웨이로 들어온 데이터 요청을 Operation Routine 에 전달 할 때 변환되는 데이터의 구조를 정의합니다.
응답 구조Operation Routine 의 응답을 게이트웨이 응답으로 전달 할 때 변환되는 데이터의 구조를 정의합니다.
${key 명} 형식으로 작성 할 경우 Operation-Routine 에서 응답 된 json key 의 값을 사용 할 수 있습니다.
생성 날짜게이트웨이 생성일시

요청 구조

  • 분류 : 인터페이스 항목에 대한 구분을 선택합니다.
    • Header : 인터페이스의 Header 를 나타냅니다. 주로 온라인 분석을 요청하는 시스템과 서비스 자원 사이의 통신을 위한 메타 정보로 이루어집니다.
    • Data : 서비스 자원의 전달되는 데이터를 정의합니다. Data 부를 json 형태로 변환하여 전달합니다.
    • End : 인터페이스 항목 중 마지막에 특정 End 문자가 붙는 경우 END 로 정의합니다. 흔히 Carriage return 값이 포함될 경우 사용합니다.
  • 데이터 형식 : 해당 항목의 데이터 형식을 입력합니다.
  • KEY : 항목명을 입력합니다
  • 시작 : 데이터형태가Text인경우해당항목의데이터의시작위치를입력합니다.
  • 길이 : 데이터형태가Text인경우해당항목의데이터길이를입력합니다.

Flex Length

Flex Length 타입은 특정 구분자로 구분되어 들어온 데이터를 변환 할 때 사용되는 옵션입니다. 구분자를 설정하여 데이터를 분리 할 수 있습니다. 응답 데이터도 동일한 구분자로 데이터를 변환합니다.

gateway_flexLength

Text, Text(ecu-kr)

Text 타입은 일정 길이의 텍스트를 시작 값과 텍스트 길이를 입력하여 원하는 키로 변환할 수 있습니다. Text(euc-kr) 타입은 Text 타입과 동일하나 요청하는 데이터의 텍스트 인코딩이 euc-kr 인 경우 사용합니다.

gateway_flexLength

Json

Json 타입은 요청 된 데이터가 Json 타입일 경우 요청 Json 에서 원하는 키를 선택하여 Operation- Routine 으로 전달을 할 수 있습니다. Json 데이터가 텍스트 형식으로 들어오는 경우에도 인터페이스에서 Json 형태로 변환하여 처리합니다.

gateway_flexLength

NOTE

GW 플랫폼의 인터페이스에서는 모든 입력을 Json 형태로 변환하여 처리합니다. 따라서, 데이터 header 의 Content-type 과 인터페이스 데이터 형식의 타입에 의해 요청 데이터의 처리 가능 여부가 다릅니다.

Contnet-typeText, Text(euc-kr), Flex LengthJson
application/json처리 불가가능
그 외의 타입문자열만 가능Json형태의 문자열만 가능

응답 구조에서는 데이터 형식이 Text 인 경우 모든 데이터를 문자열로 응답합니다.
데이터 형식이 Json 인 경우, 문자열 붙이기 기능을 제외한 모든 데이터는 데이터의 형태 그대로 응답합니다.
ex)
요청에 의한 결과값이 a=5이고, 응답 구조의 Key는 A,Value가 ${a} 인 경우 응답 값은 {A:5}
요청에 의한 결과값이 a=”5”이고, 응답 구조의 Key 는 A, Value 가 ${a} 인 경우 응답 값은 {A:”5”}
요청에 의한 결과값이 a=5이고, 응답 구조의 Key는 A,Value가 TEST${a} 인 경우 응답 값은 {A:”TEST5”} (문자열붙이기 기능)

Delete

왼쪽 인터페이스 목록 화면에서 interface_delete버튼을 클릭하여 인터페이스를 삭제할 수 있습니다.

Create Gateway

인터페이스 목록의 gateway_create_btn 버튼을 클릭하여 새로운 게이트웨이를 등록합니다.

gateway_create
필드명설명
게이트웨이명새로운 게이트웨이의 이름입니다.
경로사용자 지정 게이트웨이 경로를 설정합니다.
인터페이스게이트웨이를 통해 들어온 데이터를 지정된 형식으로 변환합니다. 미리 등록된 인터페이스를 선택합니다.
응답대기시간API 호출 타임아웃 시간을 지정합니다.
연결 조건게이트웨이 연결을 원하는 프로젝트의 앱을 선택하여 추가하며, 특정 값을 기준으로 여러 개의 앱을 선택적으로 운영할 수 있습니다.


NOTE

인터페이스를 선택하지 않는 경우에는 조건에 의한 앱(Operation-Routine only) 연결을 할 수 없습니다. 사전에 정의한 인터페이스를 선택한 경우에는 인터페이스 Key 와 Value 의 조건에 따라 설정된 앱의 엔드포인트로 데이터를 전달합니다.

설정된 조건은 등록된 순서에 의해서 우선순위가 결정됩니다. 예를 들어, 2 개의 조건이 설정되어 있고, 첫번째 조건에 맞는 데이터가 들어오는 경우 두번째의 조건은 무시됩니다.

Edit Gateway

게이트웨이 목록 화면에서 수정할 게이트웨이를 클릭하면 해당 게이트웨이를 변경할 수 있습니다.

gateway_edit

Delete Gateway

게이트웨이 목록 화면에서 오른쪽 gateway_delete_btn버튼을 클릭하여 해당 게이트웨이를 삭제할 수 있습니다.

gateway_delete