이 문서에서는 이벤트 스트림에 HTTP 원본을 추가하는 방법을 보여 있습니다.
HTTP 커넥터는 실시간 처리를 위해 REST API에서 Eventstream으로 직접 데이터를 스트리밍하는 코드 없는 구성 가능한 방법을 제공합니다. 이를 통해 SaaS 플랫폼 및 공용 데이터 피드에서 데이터를 지속적으로 끌어오고 JSON 응답을 구조화된 이벤트로 자동으로 구문 분석할 수 있습니다. 또한 빠르게 시작하고, 예제 API를 선택하고, API 키를 입력하고, Eventstream이 필요한 헤더 및 매개 변수를 미리 채울 수 있도록 하는 예제 공개 피드를 제공합니다.
필수 조건
- Fabric 용량 또는 Fabric 평가판 형식의 작업 영역입니다.
- 기여자 이상의 작업 영역 역할이 있어야 작업 영역에 액세스할 수 있습니다.
- 공개적으로 액세스할 수 있는 HTTP 엔드포인트입니다. 보호된 네트워크에 있는 경우 Eventstream 커넥터 가상 네트워크 주입을 사용하여 연결합니다.
- eventstream이 없는 경우 가이드에 따라 eventstream을 만듭니다.
HTTP를 원본으로 추가
아직 Eventstream에 원본을 추가하지 않은 경우 데이터 원본 연결 타일을 선택합니다. 리본에서 원본>연결 데이터 원본 추가를 선택할 수도 있습니다.
이미 게시된 이벤트 스트림에 원본을 추가하는 경우 편집 모드로 전환합니다. 리본에서 원본 추가>연결 데이터 원본을 선택합니다.
http를 검색하고 연결을 선택하여 이벤트 스트림에 HTTP 커넥터를 추가합니다.
HTTP 구성 및 연결
예제 공용 API 중 하나를 선택하여 미리 정의된 헤더 및 매개 변수로 빠르게 시작하거나 Exit를 선택하여 사용자 지정 HTTP 커넥터를 구성할 수 있습니다.
예제 공용 API 사용
예제 공용 API를 선택하여 HTTP 커넥터를 빠르게 설정합니다
- Binance. 최신 비트코인 가격 가져오기
- CoinGecko. 현재 비트코인 가격을 USD로 가져옵니다.
- 런던 교통. 런던 역에 대한 실시간 도착 예측 가져오기
- 알파 밴티지. MSFT(실시간 Microsoft) 주가 가져오기
- OpenWeather. 위치에 대한 일기 예보 가져오기
- NewsAPI. 미국에서 최신 비즈니스 헤드라인 가져오기
API 키가 필요한 API의 경우 제공된 링크를 사용하여 API 키를 적용하고 입력 상자에 입력합니다. 그런 다음 커넥터는 Fabric 클라우드 연결을 자동으로 만들고 필요한 HTTP 헤더 및 매개 변수를 미리 입력합니다.
중요합니다
Binance 예제 API에는 API 키가 필요하지 않지만 사용 약관을 준수해야 합니다.
기존 연결 사용을 선택하는 경우 예제 적용을 선택하여 API 키를 입력하지 않고 예제 API에 필요한 헤더 및 매개 변수를 미리 입력합니다.
또는 종료 를 선택하여 창을 닫고 자체 HTTP 원본을 처음부터 구성합니다.
사용자 고유의 HTTP 원본 구성
예제 API 없이 사용자 고유의 HTTP 원본을 구성하는 단계를 수행합니다.
새 연결 만들기. 새 연결을 선택하고 HTTP 원본에 필요한 속성을 입력합니다.
- 기본 URL: HTTP 엔드포인트의 기본 URL입니다.
- 토큰 대상 URI(선택 사항) : 토큰이 의도한 리소스입니다.
- 연결 이름: 연결의 이름을 입력합니다.
-
인증 종류: 현재 HTTP 커넥터는
Anonymous,Basic, 및API Key인증만 지원합니다.
요청 메서드: 선택
GET또는POST.헤더 및 매개 변수: 클라우드 연결을 만들 때 API 키 인증을 선택한 경우 헤더 또는 매개 변수에서 동적 매개 변수 ${apiKey} 를 사용하여 API 키를 참조합니다.
예를 들어 CoinGecko에 연결하려면 다음 헤더
x_cg_demo_api_key=${apiKey}를 사용합니다.중요합니다
헤더 또는 매개 변수에 API 키 또는 기타 자격 증명을 입력하지 마세요.
요청 간격(s): 연속 요청 사이의 대기 시간(초)을 지정합니다. 유효한 범위는 [1, 3600]입니다.
최대 재시도: 오류가 발생할 때 커넥터가 요청을 다시 시도한 최대 횟수입니다. 유효한 범위는 [10, 100]입니다.
다시 시도 백오프(s): 커넥터가 다시 시도하기 전에 오류가 발생한 후 대기하는 시간(초) 유효한 범위는 [1, 3600]입니다.
다시 시도 상태 코드: HTTP 오류 코드는 커넥터가 요청을 다시 시도하라는 메시지를 표시하는 반환되었습니다. 쉼표로 구분된 코드 목록 또는 코드 범위를 입력합니다. 범위는 시작 및 선택적 끝 코드로 지정됩니다. 다음은 그 예입니다.
-
400-에는 400보다 크거나 같은 모든 코드가 포함됩니다. -
400-500에는 500을 포함하여 400에서 500까지의 코드가 포함되어 있습니다. -
404,408,500-는 커넥터가 404 NOT FOUND, 408 REQUEST TIMEOUT 및 모든 5xx 오류 코드를 다시 시도하도록 요청합니다.
권한 없음, 시간 제한 및 너무 많은 요청과 같은 일부 상태 코드는 항상 다시 시도됩니다.
-
페이지네이션된 API 처리
일부 REST API는 단일 응답 대신 여러 페이지에 데이터를 반환합니다. 예를 들어 API는 각 응답에서 100개의 레코드를 반환하고 나머지 레코드를 검색하기 위해 추가 요청이 필요할 수 있습니다. HTTP 커넥터는 폴링 주기에서 여러 페이지에서 데이터를 검색할 수 있도록 페이지 매김을 지원합니다.
지원되는 페이지 매김 유형
HTTP 커넥터는 다음과 같은 페이지 매김 패턴을 지원합니다.
-
페이지 기반 페이지 매김: 요청에는 페이지 매개 변수(예:
page=1또는page=2.)가 포함됩니다. 커넥터는 페이지 번호를 증가하여 다음 페이지를 요청합니다. -
커서 기반 페이지 매김: API 응답에는 커서 또는 연속 토큰(예:
continuationToken또는nextPageToken.)이 포함됩니다. 커넥터는 이 값을 사용하여 다음 페이지를 요청합니다.
페이지 매김 구성
페이지 매김을 사용하려면 HTTP 커넥터에서 다음 설정을 구성합니다.
- 페이지 매김 사용: 페이지 매김 처리를 켭니다.
- 페이지 매김 모드: 페이지 매김 유형을 지정합니다. 지원되는 값은 페이지 및 커서입니다.
-
응답 데이터 JSON 포인터: API 응답에서 데이터 배열의 위치(예:
/value,/items또는/articles.)를 지정합니다.
페이지 기반 페이지 매김 예제
페이지 기반 API의 경우 첫 번째 요청이 될 GET /api/data?page=1수 있습니다.
예시 구성:
-
페이지 매김 활성화:
true. - 페이지 매김 모드: 페이지.
커넥터는 다음과 같은 page=2page=3후속 페이지에 대한 요청을 보냅니다. API 응답이 빈 배열을 반환하는 것과 같이 더 이상 사용할 수 있는 데이터가 없음을 나타내는 경우 페이지 매김이 중지됩니다.
커서 기반 페이지 매김 예제
커서 기반 API의 경우 응답에는 다음과 같은 "continuationToken": "ABC123"연속 토큰이 포함될 수 있습니다.
커넥터는 연속 토큰을 추출하고 다음과 같은 GET /api/data?continuationToken=ABC123다음 요청에서 사용합니다. 응답에 다른 토큰이 포함되지 않거나 토큰 값이 null이면 페이지 매김이 중지됩니다.
페이지 매김이 중지되는 경우
커넥터는 다음 조건 중 하나가 충족되면 추가 페이지 요청을 중지합니다.
- API는 빈 응답을 반환합니다.
- 응답에는 다음 페이지 토큰이 포함되지 않습니다.
- API는 더 이상 페이지를 사용할 수 없음을 나타냅니다.
Considerations
- 각 폴링 주기는 첫 번째 페이지에서 시작됩니다.
- 이 기능을 사용하도록 설정하기 전에 API에서 페이지 매김을 지원하는지 확인합니다.
- 잘못된 페이지 매김 구성 또는 JSON 포인터 설정으로 인해 데이터가 누락되거나 중복될 수 있습니다.
API가 각 요청에서 반환되는 레코드 수를 제한할 때 페이지 매김을 사용합니다.
스트림 또는 원본 세부 정보
연결 페이지에서 Eventstream 또는 Real-Time 허브를 사용하는지 여부에 따라 다음 단계 중 하나를 수행합니다.
Eventstream:
오른쪽의 원본 세부 정보 창에서 다음 단계를 수행합니다.
원본 이름의 경우 연필 단추를 선택하여 이름을 변경합니다.
Eventstream 이름 및 스트림 이름은 읽기 전용입니다.
Real-Time 허브:
오른쪽의 스트림 세부 정보 섹션에서 다음 단계를 수행합니다.
eventstream을 만들 Fabric 작업 영역 선택합니다.
Eventstream 이름의 경우 연필 단추를 선택하고 eventstream의 이름을 입력합니다.
Stream 이름 값은 이벤트 스트림의 이름에 -stream을 추가하여 자동으로 생성됩니다. 이 스트림은 마법사가 완료되면 실시간 허브의 모든 데이터 스트림 페이지에 표시됩니다.
구성 페이지의 맨 아래에서 다음을 선택합니다.
검토 및 연결
검토 + 연결 화면에서 요약을 검토하고 추가(Eventstream) 또는 연결(Real-Time 허브)을 선택합니다.
편집 모드에서 이벤트 스트림에 추가된 HTTP 원본을 볼 수 있습니다.
게시를 선택하여 변경 내용을 게시하고 HTTP 원본에서 eventstream으로 데이터 스트리밍을 시작합니다.
제한점
- HTTP 커넥터는 현재 JSON API 응답만 지원합니다.
- OAuth 인증 은 지원되지 않습니다.
- HTTP 원본은 Git 통합 및 배포 파이프라인을 비롯한 CI/CD 기능을 지원하지 않습니다. Git을 통해 이 원본을 포함하는 Eventstream 항목을 내보내거나 가져오면 오류가 발생할 수 있습니다.
관련 콘텐츠
기타 커넥터: