Skip to content

에러처리

포스 플러그인에서 발생하는 rate limit을 제외한 모든 에러는 PosPluginSdkError 에러로 발생됩니다

ts
...
} catch(e) {
    if(PosPluginSdkError.isPosPluginSdkError(e)) {
        console.log('포스 플러그인에서 발생한 에러')
    }
...
}

RateLimitError

rate limit 초과 오류는 PosPluginRateLimitError 에러로 발생됩니다.

ts
import { PosPluginRateLimitError } from '@tossplace/pos-plugin-sdk';
import { posPluginSdk } from '@tossplace/pos-plugin-sdk';
...
} catch(e) {
    if(PosPluginRateLimitError.isPosPluginRateLimitError(e)) {
        console.log('rate limit 초과로 인한 에러')
    }
...

PosPluginRateLimitError에러는 PosPluginSdkError를 상속합니다 따라서 아래와 같은 경우 모든 테스트는 통과합니다

ts
  it('Error is not PosPluginSdkRateLimitError', () => {
    const error = new PosPluginSdkRateLimitError('test');
    expect(PosPluginSdkRateLimitError.isPosPluginSdkRateLimitError(error)).toBe(true);
  });
  it('PosPluginSdkRateLimitError is PosPluginSdkError', () => {
    const error = new PosPluginSdkRateLimitError('test');
    expect(PosPluginSdkError.isPosPluginSdkError(error)).toBe(true);
  });