메인 콘텐츠로 건너뛰기
TypeScript SDK는 라이브 데이터 피드를 위한 실시간 스트리밍 기능을 제공합니다.

기본 스트리밍

실시간 샘플링된 Post에 연결:
import { Client } from '@xdevplatform/xdk';

const client: Client = new Client({ bearerToken: 'your-bearer-token' });

// 공개 Post 1% 샘플
const stream = await client.stream.postsSample({
  tweetfields: ['id','text','created_at'],
  expansions: ['author_id'],
  userfields: ['id','username','name']
});

// 이벤트 리스닝
stream.on('data', (event) => {
  // event는 파싱된 JSON 라인입니다 (data/includes/matching_rules)
  console.log('New data:', event);
});

stream.on('error', (e) => console.error('Stream error:', e));
stream.on('close', () => console.log('Stream closed'));

비동기 반복

비동기 반복으로 스트림을 처리합니다:
const stream = await client.stream.postsSample();
for await (const event of stream) {
  // 각 이벤트는 파싱된 JSON 행입니다 (data/includes/matching_rules)
  console.log(event);
}

스트림 관리

이벤트 기반 스트림에서 라이프사이클을 제어합니다:
// 스트림 종료
stream.close();

// 자동 재연결 (래퍼에서 활성화된 경우)
// 기본 EventDrivenStream은 기본 재연결 훅을 노출합니다

오류 처리

스트리밍 오류 및 재연결 처리:
stream.on('error', (event) => {
  const err = event.error || event;
  console.error('스트림 오류:', err);
});

stream.on('keepAlive', () => {
  // 연결 유지 이벤트
});