naverseries-sdk 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -21
- package/README.md +8 -4
- package/dist/src/cache.d.ts +45 -1
- package/dist/src/cache.d.ts.map +1 -1
- package/dist/src/cache.js +39 -0
- package/dist/src/cache.js.map +1 -1
- package/dist/src/client.d.ts +134 -19
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/client.js +180 -41
- package/dist/src/client.js.map +1 -1
- package/dist/src/errors.d.ts +57 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +57 -0
- package/dist/src/errors.js.map +1 -1
- package/dist/src/retry.d.ts +16 -0
- package/dist/src/retry.d.ts.map +1 -1
- package/dist/src/retry.js +7 -0
- package/dist/src/retry.js.map +1 -1
- package/dist/src/types.d.ts +152 -0
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/src/client.js
CHANGED
|
@@ -24,11 +24,21 @@ function cleanTitle(raw) {
|
|
|
24
24
|
/**
|
|
25
25
|
* 네이버 시리즈(series.naver.com) 비공식 TypeScript 클라이언트
|
|
26
26
|
*
|
|
27
|
-
*
|
|
28
|
-
* -
|
|
29
|
-
* -
|
|
30
|
-
* -
|
|
31
|
-
* -
|
|
27
|
+
* @remarks
|
|
28
|
+
* - **Undici** 커넥션 풀링으로 고성능 HTTP 처리
|
|
29
|
+
* - **Full-Jitter** 지수백오프 자동 재시도
|
|
30
|
+
* - **LRU+TTL** 인메모리 캐시 (`cache: true` 옵션)
|
|
31
|
+
* - 인터셉터: `onRequest` / `onResponse` / `onError` / `onRetry`
|
|
32
|
+
* - 비동기 제너레이터 스트리밍 검색: `searchStream()`
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* import NaverSeriesClient from 'naverseries-sdk'
|
|
37
|
+
*
|
|
38
|
+
* const client = new NaverSeriesClient({ cache: true, maxRetries: 3 })
|
|
39
|
+
* const top100 = await client.getTop100()
|
|
40
|
+
* await client.close()
|
|
41
|
+
* ```
|
|
32
42
|
*/
|
|
33
43
|
export class NaverSeriesClient {
|
|
34
44
|
baseUrl;
|
|
@@ -193,9 +203,19 @@ export class NaverSeriesClient {
|
|
|
193
203
|
}
|
|
194
204
|
// ── 검색 ─────────────────────────────────────────────
|
|
195
205
|
/**
|
|
196
|
-
* 소설 / 웹툰 통합 검색
|
|
206
|
+
* 소설 / 웹툰 통합 키워드 검색
|
|
207
|
+
*
|
|
208
|
+
* @param options - 검색 옵션 (`keyword` 필수)
|
|
209
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
210
|
+
* @returns 검색 결과 목록 및 다음 페이지 존재 여부
|
|
211
|
+
* @throws {NaverSeriesValidationError} `keyword`가 빈 문자열인 경우
|
|
212
|
+
*
|
|
197
213
|
* @example
|
|
214
|
+
* ```ts
|
|
198
215
|
* const result = await client.search({ keyword: '환생', page: 1, type: 'novel' })
|
|
216
|
+
* console.log(result.items[0].title) // "66666년 만에 환생한 흑마법사 [독점]"
|
|
217
|
+
* console.log(result.hasNext) // true
|
|
218
|
+
* ```
|
|
199
219
|
*/
|
|
200
220
|
async search(options, requestOptions) {
|
|
201
221
|
if (!options.keyword?.trim()) {
|
|
@@ -231,11 +251,22 @@ export class NaverSeriesClient {
|
|
|
231
251
|
return { items, hasNext };
|
|
232
252
|
}
|
|
233
253
|
/**
|
|
234
|
-
* 검색 결과를 비동기
|
|
254
|
+
* 검색 결과를 비동기 제너레이터(AsyncIterator)로 스트리밍 순회
|
|
255
|
+
*
|
|
256
|
+
* 여러 페이지를 자동으로 넘기며 작품을 하나씩 yield합니다.
|
|
257
|
+
* `maxPages`를 지정하면 해당 페이지 수 이후 자동 종료됩니다.
|
|
258
|
+
*
|
|
259
|
+
* @param options - 스트림 검색 옵션 (`keyword` 필수)
|
|
260
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
261
|
+
* @throws {NaverSeriesValidationError} `keyword`가 빈 문자열인 경우
|
|
262
|
+
*
|
|
235
263
|
* @example
|
|
264
|
+
* ```ts
|
|
236
265
|
* for await (const novel of client.searchStream({ keyword: '환생', maxPages: 3 })) {
|
|
237
|
-
* console.log(novel.title)
|
|
266
|
+
* console.log(novel.title, novel.authorName)
|
|
267
|
+
* // 필요할 때 break 가능
|
|
238
268
|
* }
|
|
269
|
+
* ```
|
|
239
270
|
*/
|
|
240
271
|
async *searchStream(options, requestOptions) {
|
|
241
272
|
if (!options.keyword?.trim()) {
|
|
@@ -256,19 +287,35 @@ export class NaverSeriesClient {
|
|
|
256
287
|
}
|
|
257
288
|
// ── 랭킹 ─────────────────────────────────────────────
|
|
258
289
|
/**
|
|
259
|
-
* 소설 TOP 100 랭킹 조회
|
|
290
|
+
* 실시간 소설 TOP 100 랭킹 조회
|
|
291
|
+
*
|
|
292
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
293
|
+
* @returns 순위 / 순위변동 / 평점 등이 포함된 랭킹 항목 배열
|
|
294
|
+
*
|
|
260
295
|
* @example
|
|
296
|
+
* ```ts
|
|
261
297
|
* const top100 = await client.getTop100()
|
|
298
|
+
* console.log(top100[0].rank, top100[0].title) // 1 "비경수선전 [독점]"
|
|
299
|
+
* console.log(top100[0].rankChange) // "new" | "up" | "down" | "same"
|
|
300
|
+
* ```
|
|
262
301
|
*/
|
|
263
302
|
async getTop100(requestOptions) {
|
|
264
303
|
const html = await this.request("/novel/top100List.series", "GET", {}, requestOptions);
|
|
265
304
|
return this._parseRankingList(html);
|
|
266
305
|
}
|
|
267
306
|
/**
|
|
268
|
-
* 장르별 랭킹
|
|
269
|
-
*
|
|
307
|
+
* 장르별 인기 작품 랭킹 조회
|
|
308
|
+
*
|
|
309
|
+
* @param genreCode - 장르 코드. `getGenres()`로 조회 가능.
|
|
310
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
311
|
+
* @returns 해당 장르의 랭킹 항목 배열
|
|
312
|
+
* @throws {NaverSeriesValidationError} `genreCode`가 빈 문자열인 경우
|
|
313
|
+
*
|
|
270
314
|
* @example
|
|
315
|
+
* ```ts
|
|
271
316
|
* const items = await client.getRankingByGenre('romance')
|
|
317
|
+
* const items = await client.getRankingByGenre('fantasy')
|
|
318
|
+
* ```
|
|
272
319
|
*/
|
|
273
320
|
async getRankingByGenre(genreCode, requestOptions) {
|
|
274
321
|
if (!genreCode?.trim()) {
|
|
@@ -316,9 +363,28 @@ export class NaverSeriesClient {
|
|
|
316
363
|
// ── 작품 상세 ─────────────────────────────────────────
|
|
317
364
|
/**
|
|
318
365
|
* 작품 상세 정보 조회
|
|
319
|
-
*
|
|
366
|
+
*
|
|
367
|
+
* @remarks
|
|
368
|
+
* 상세 페이지는 일부 JS 렌더링이 포함되어 `score`는 `undefined`일 수 있습니다.
|
|
369
|
+
* 평점이 필요하면 `search()` 또는 `getNovelByName()`의 `searchItem.score`를 사용하세요.
|
|
370
|
+
*
|
|
371
|
+
* 장르/태그는 meta description의 `#해시태그`에서 추출합니다.
|
|
372
|
+
* 썸네일은 `og:image` (600×314px 고해상도)에서 추출합니다.
|
|
373
|
+
*
|
|
374
|
+
* @param novelId - 작품 고유 ID (`productNo`). 문자열 또는 숫자.
|
|
375
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
376
|
+
* @returns 제목 / 작가 / 줄거리 / 장르 / 에피소드 수 / 썸네일 등
|
|
377
|
+
* @throws {NaverSeriesValidationError} `novelId`가 빈 값인 경우
|
|
378
|
+
* @throws {NaverSeriesNotFoundError} 존재하지 않는 `novelId`인 경우
|
|
379
|
+
*
|
|
320
380
|
* @example
|
|
321
|
-
*
|
|
381
|
+
* ```ts
|
|
382
|
+
* const detail = await client.getNovelDetail('3400123')
|
|
383
|
+
* console.log(detail.title) // "전지적 독자 시점"
|
|
384
|
+
* console.log(detail.genres) // ["현판", "초월존재판무", "각성자"]
|
|
385
|
+
* console.log(detail.description) // "[오직 나만이, 이 세계의 결말을 알고 있다.]..."
|
|
386
|
+
* console.log(detail.thumbnailUrl) // "https://...?type=m600x314" (고해상도)
|
|
387
|
+
* ```
|
|
322
388
|
*/
|
|
323
389
|
async getNovelDetail(novelId, requestOptions) {
|
|
324
390
|
if (!novelId) {
|
|
@@ -326,28 +392,59 @@ export class NaverSeriesClient {
|
|
|
326
392
|
}
|
|
327
393
|
const html = await this.request(`/novel/detail.series`, "GET", { productNo: String(novelId) }, requestOptions);
|
|
328
394
|
const $ = cheerio.load(html);
|
|
329
|
-
// 제목: <title>
|
|
330
|
-
const
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
const
|
|
395
|
+
// ── 제목: og:title 또는 <title> ────────────────────
|
|
396
|
+
const title = $("meta[property='og:title']").attr("content")?.trim() ||
|
|
397
|
+
$("title").text().split(":")[0].trim();
|
|
398
|
+
// ── 썸네일: og:image ───────────────────────────────
|
|
399
|
+
const thumbnailUrl = $("meta[property='og:image']").attr("content")?.trim() ?? undefined;
|
|
400
|
+
// ── meta description 파싱 ─────────────────────────
|
|
401
|
+
// 형식: "1068 화 연재중, #태그1, #태그2, 줄거리: ..., 작가: ..."
|
|
402
|
+
const metaDesc = $("meta[name='description']").attr("content") ||
|
|
403
|
+
$("meta[property='og:description']").attr("content") ||
|
|
404
|
+
"";
|
|
405
|
+
// 작가
|
|
406
|
+
const authorMatch = metaDesc.match(/작가:\s*([^\n,]+)/);
|
|
407
|
+
const authorName = (authorMatch?.[1]?.trim()) ||
|
|
408
|
+
$(".author").first().text().trim();
|
|
409
|
+
// 줄거리: "줄거리: ..." 이후 텍스트 (", 작가:" 이전까지)
|
|
410
|
+
const descMatch = metaDesc.match(/줄거리:\s*([\s\S]+?)(?:,\s*작가:|$)/);
|
|
411
|
+
const description = descMatch?.[1]?.replace(/\u200b/g, "").trim() || undefined;
|
|
412
|
+
// 해시태그 → 장르/태그 추출 (#NOVEL 등 영문 대문자 전체는 타입 태그이므로 필터)
|
|
413
|
+
const hashTags = [];
|
|
414
|
+
const hashMatches = metaDesc.matchAll(/#([^\s,#]+)/g);
|
|
415
|
+
for (const m of hashMatches) {
|
|
416
|
+
const tag = m[1].trim();
|
|
417
|
+
if (tag && !/^[A-Z]+$/.test(tag))
|
|
418
|
+
hashTags.push(tag);
|
|
419
|
+
}
|
|
420
|
+
// ── 인라인 ghtProductInfo JS 객체 파싱 ────────────
|
|
421
|
+
// 에피소드 수, 서비스 타입 등
|
|
422
|
+
let episodeCount;
|
|
423
|
+
let serviceType;
|
|
424
|
+
const scriptTexts = $("script:not([src])").map((_, el) => $(el).html() ?? "").get();
|
|
425
|
+
for (const text of scriptTexts) {
|
|
426
|
+
if (!text.includes("ghtProductInfo"))
|
|
427
|
+
continue;
|
|
428
|
+
const epMatch = text.match(/"nTotalVolumeCount"\s*:\s*(\d+)/);
|
|
429
|
+
if (epMatch)
|
|
430
|
+
episodeCount = parseInt(epMatch[1], 10);
|
|
431
|
+
const svcMatch = text.match(/"sService"\s*:\s*"([^"]+)"/);
|
|
432
|
+
if (svcMatch)
|
|
433
|
+
serviceType = svcMatch[1];
|
|
434
|
+
break;
|
|
435
|
+
}
|
|
436
|
+
// ── 에피소드 수 보완: meta description "N화" ───────
|
|
437
|
+
if (!episodeCount) {
|
|
438
|
+
const epMatch2 = metaDesc.match(/(\d+)\s*화/);
|
|
439
|
+
if (epMatch2)
|
|
440
|
+
episodeCount = parseInt(epMatch2[1], 10);
|
|
441
|
+
}
|
|
442
|
+
// ── 완결 여부 ──────────────────────────────────────
|
|
443
|
+
// meta desc에 "연재중"이 있으면 연재 중, "완결"이 있으면 완결
|
|
444
|
+
// (html 전체에 "완결" 텍스트는 너무 광범위하므로 meta 우선)
|
|
445
|
+
const isComplete = metaDesc.includes("완결") && !metaDesc.includes("연재중");
|
|
446
|
+
// ── 평점: 상세 페이지는 JS 렌더링이어서 직접 없음 ─
|
|
334
447
|
const score = $("em.score_num").first().text().trim() || undefined;
|
|
335
|
-
// 설명문 - JS 렌더링 전에도 일부 포함될 수 있음
|
|
336
|
-
const description = $(".dsc_txt, p.txt, .desc").first().text().trim() || undefined;
|
|
337
|
-
// 장르
|
|
338
|
-
const genres = [];
|
|
339
|
-
$(".genre_area a, .category a").each((_, el) => {
|
|
340
|
-
const g = $(el).text().trim();
|
|
341
|
-
if (g)
|
|
342
|
-
genres.push(g);
|
|
343
|
-
});
|
|
344
|
-
// 에피소드 수/완결 여부
|
|
345
|
-
const epContainer = $("[class*='episode'], .ep_count, .lst_view").first();
|
|
346
|
-
const episodeCountText = $("dt:contains('총 회차') + dd, .total_episode").text().trim();
|
|
347
|
-
const epMatch = episodeCountText.match(/\d+/);
|
|
348
|
-
const episodeCount = epMatch ? parseInt(epMatch[0], 10) : undefined;
|
|
349
|
-
const isComplete = html.includes("완결") || html.includes("complete");
|
|
350
|
-
const thumbnailUrl = $(".book_area img, .pic img").first().attr("src") ?? undefined;
|
|
351
448
|
return {
|
|
352
449
|
novelId: String(novelId),
|
|
353
450
|
title,
|
|
@@ -355,7 +452,7 @@ export class NaverSeriesClient {
|
|
|
355
452
|
score,
|
|
356
453
|
description,
|
|
357
454
|
thumbnailUrl,
|
|
358
|
-
genres:
|
|
455
|
+
genres: hashTags.length > 0 ? hashTags : undefined,
|
|
359
456
|
isComplete,
|
|
360
457
|
episodeCount,
|
|
361
458
|
link: `${this.baseUrl}/novel/detail.series?productNo=${novelId}`,
|
|
@@ -363,10 +460,19 @@ export class NaverSeriesClient {
|
|
|
363
460
|
}
|
|
364
461
|
// ── 에피소드 목록 ─────────────────────────────────────
|
|
365
462
|
/**
|
|
366
|
-
* 작품의 에피소드 목록 조회
|
|
367
|
-
*
|
|
463
|
+
* 작품의 에피소드 목록 메타데이터 조회
|
|
464
|
+
*
|
|
465
|
+
* @param novelId - 작품 고유 ID (`productNo`). 문자열 또는 숫자.
|
|
466
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
467
|
+
* @returns novelId 및 에피소드 메타데이터 목록 (`EpisodeListResult`)
|
|
468
|
+
* @throws {NaverSeriesValidationError} `novelId`가 빈 값인 경우
|
|
469
|
+
*
|
|
368
470
|
* @example
|
|
471
|
+
* ```ts
|
|
369
472
|
* const eps = await client.getEpisodes('5553059')
|
|
473
|
+
* console.log(`총 ${eps.items.length}화 수신`)
|
|
474
|
+
* console.log(eps.items[0].title, eps.items[0].isFree)
|
|
475
|
+
* ```
|
|
370
476
|
*/
|
|
371
477
|
async getEpisodes(novelId, requestOptions) {
|
|
372
478
|
if (!novelId) {
|
|
@@ -400,8 +506,15 @@ export class NaverSeriesClient {
|
|
|
400
506
|
// ── 카테고리 / 장르 ───────────────────────────────────
|
|
401
507
|
/**
|
|
402
508
|
* 장르 카테고리 목록 조회
|
|
509
|
+
*
|
|
510
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
511
|
+
* @returns 장르 목록 배열 (`CategoryItem[]`)
|
|
512
|
+
*
|
|
403
513
|
* @example
|
|
514
|
+
* ```ts
|
|
404
515
|
* const genres = await client.getGenres()
|
|
516
|
+
* genres.forEach(g => console.log(g.name, g.code))
|
|
517
|
+
* ```
|
|
405
518
|
*/
|
|
406
519
|
async getGenres(requestOptions) {
|
|
407
520
|
const html = await this.request("/novel/categoryList.series", "GET", { categoryTypeCode: "genre" }, requestOptions);
|
|
@@ -419,9 +532,18 @@ export class NaverSeriesClient {
|
|
|
419
532
|
}
|
|
420
533
|
// ── 이름으로 검색 → 상세 일괄 ─────────────────────────
|
|
421
534
|
/**
|
|
422
|
-
* 키워드로 검색 후 첫 번째 결과의 상세
|
|
535
|
+
* 키워드로 검색 후 첫 번째 매칭 결과의 상세 정보를 한 번에 반환 (편의 메서드)
|
|
536
|
+
*
|
|
537
|
+
* @param keyword - 검색할 작품명/키워드
|
|
538
|
+
* @param requestOptions - 이 요청에만 적용할 오버라이드 옵션
|
|
539
|
+
* @returns 검색 항목(`searchItem`) 및 상세 정보(`detail`) 객체
|
|
540
|
+
* @throws {NaverSeriesNotFoundError} 검색 결과가 존재하지 않을 때
|
|
541
|
+
*
|
|
423
542
|
* @example
|
|
543
|
+
* ```ts
|
|
424
544
|
* const { searchItem, detail } = await client.getNovelByName('전지적 독자 시점')
|
|
545
|
+
* console.log(detail.title, detail.authorName, searchItem.score)
|
|
546
|
+
* ```
|
|
425
547
|
*/
|
|
426
548
|
async getNovelByName(keyword, requestOptions) {
|
|
427
549
|
const result = await this.search({ keyword, page: 1 }, requestOptions);
|
|
@@ -433,15 +555,32 @@ export class NaverSeriesClient {
|
|
|
433
555
|
return { searchItem, detail };
|
|
434
556
|
}
|
|
435
557
|
// ── 캐시 / 리소스 ─────────────────────────────────────
|
|
436
|
-
/**
|
|
558
|
+
/**
|
|
559
|
+
* 현재 활성화된 캐시 스토어의 성능 메트릭 통계를 반환합니다.
|
|
560
|
+
* 캐시가 활성화되지 않았거나 통계를 지원하지 않는 스토어인 경우 `undefined`를 반환합니다.
|
|
561
|
+
*
|
|
562
|
+
* @returns 캐시 히트/미스/적중률 통계 객체 또는 `undefined`
|
|
563
|
+
*
|
|
564
|
+
* @example
|
|
565
|
+
* ```ts
|
|
566
|
+
* const stats = client.getCacheStats()
|
|
567
|
+
* if (stats) {
|
|
568
|
+
* console.log(`히트율: ${(stats.hitRatio * 100).toFixed(1)}%`)
|
|
569
|
+
* }
|
|
570
|
+
* ```
|
|
571
|
+
*/
|
|
437
572
|
getCacheStats() {
|
|
438
573
|
return this.cacheStore?.getStats ? this.cacheStore.getStats() : undefined;
|
|
439
574
|
}
|
|
440
|
-
/**
|
|
575
|
+
/**
|
|
576
|
+
* 인메모리 캐시 데이터를 전체 초기화(삭제)합니다.
|
|
577
|
+
*/
|
|
441
578
|
clearCache() {
|
|
442
579
|
this.cacheStore?.clear();
|
|
443
580
|
}
|
|
444
|
-
/**
|
|
581
|
+
/**
|
|
582
|
+
* 클라이언트 커넥션 풀(Undici Agent)을 정상 종료하고 시스템 리소스를 정리합니다.
|
|
583
|
+
*/
|
|
445
584
|
async close() {
|
|
446
585
|
await this.dispatcher.close();
|
|
447
586
|
}
|
package/dist/src/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/src/errors.d.ts
CHANGED
|
@@ -1,30 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NaverSeries SDK 기본 최상위 에러 클래스
|
|
3
|
+
*/
|
|
1
4
|
export declare class NaverSeriesError extends Error {
|
|
2
5
|
readonly cause?: (Error | unknown) | undefined;
|
|
3
6
|
readonly url?: string | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* @param message 에러 메시지
|
|
9
|
+
* @param cause 원인이 되는 하위 에러 객체
|
|
10
|
+
* @param url 요청을 시도한 URL
|
|
11
|
+
*/
|
|
4
12
|
constructor(message: string, cause?: (Error | unknown) | undefined, url?: string | undefined);
|
|
5
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* 네이버 시리즈 API 또는 HTTP 응답 코드 오류 (4xx, 5xx 등)
|
|
16
|
+
*/
|
|
6
17
|
export declare class NaverSeriesApiError extends NaverSeriesError {
|
|
7
18
|
readonly statusCode?: number | undefined;
|
|
8
19
|
readonly errorCode?: string | number | undefined;
|
|
9
20
|
readonly rawData?: any | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* @param message 에러 메시지
|
|
23
|
+
* @param statusCode HTTP 응답 상태 코드 (예: 500, 403)
|
|
24
|
+
* @param errorCode 내부 에러 코드
|
|
25
|
+
* @param rawData 원본 응답 본문/데이터
|
|
26
|
+
* @param url 요청 대상 URL
|
|
27
|
+
*/
|
|
10
28
|
constructor(message: string, statusCode?: number | undefined, errorCode?: string | number | undefined, rawData?: any | undefined, url?: string);
|
|
11
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* 네트워크 연결 오류 또는 소켓 장애
|
|
32
|
+
*/
|
|
12
33
|
export declare class NaverSeriesNetworkError extends NaverSeriesError {
|
|
34
|
+
/**
|
|
35
|
+
* @param message 에러 메시지
|
|
36
|
+
* @param cause 원인 에러 객체
|
|
37
|
+
* @param url 요청 대상 URL
|
|
38
|
+
*/
|
|
13
39
|
constructor(message: string, cause?: Error | unknown, url?: string);
|
|
14
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* HTTP 요청 시간 초과 오류
|
|
43
|
+
*/
|
|
15
44
|
export declare class NaverSeriesTimeoutError extends NaverSeriesError {
|
|
16
45
|
readonly timeoutMs?: number | undefined;
|
|
46
|
+
/**
|
|
47
|
+
* @param message 에러 메시지
|
|
48
|
+
* @param timeoutMs 초과된 타임아웃 제한 시간 (ms)
|
|
49
|
+
* @param url 요청 대상 URL
|
|
50
|
+
*/
|
|
17
51
|
constructor(message: string, timeoutMs?: number | undefined, url?: string);
|
|
18
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* 요청한 작품 또는 리소스를 찾을 수 없음 (404)
|
|
55
|
+
*/
|
|
19
56
|
export declare class NaverSeriesNotFoundError extends NaverSeriesError {
|
|
57
|
+
/**
|
|
58
|
+
* @param message 에러 메시지
|
|
59
|
+
* @param cause 원인 에러 객체
|
|
60
|
+
* @param url 요청 대상 URL
|
|
61
|
+
*/
|
|
20
62
|
constructor(message: string, cause?: Error | unknown, url?: string);
|
|
21
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* 요청 한도 초과 오류 (HTTP 429 Too Many Requests)
|
|
66
|
+
*/
|
|
22
67
|
export declare class NaverSeriesRateLimitError extends NaverSeriesError {
|
|
23
68
|
readonly retryAfterMs?: number | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* @param message 에러 메시지
|
|
71
|
+
* @param retryAfterMs Retry-After 헤더 기반 재시도 대기 권장 시간 (ms)
|
|
72
|
+
* @param url 요청 대상 URL
|
|
73
|
+
*/
|
|
24
74
|
constructor(message: string, retryAfterMs?: number | undefined, url?: string);
|
|
25
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* 필수 인자 누락 또는 유효하지 않은 파라미터 전달 시 발생하는 유효성 검증 오류
|
|
78
|
+
*/
|
|
26
79
|
export declare class NaverSeriesValidationError extends NaverSeriesError {
|
|
27
80
|
readonly field?: string | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* @param message 에러 메시지
|
|
83
|
+
* @param field 유효성 검증에 실패한 필드명 (예: 'keyword', 'novelId')
|
|
84
|
+
*/
|
|
28
85
|
constructor(message: string, field?: string | undefined);
|
|
29
86
|
}
|
|
30
87
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/src/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,gBAAiB,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAQnB,KAAK,CAAC,GAAE,KAAK,GAAG,OAAO;aACvB,GAAG,CAAC,EAAE,MAAM;IARhC;;;;OAIG;gBAEC,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,GAAE,KAAK,GAAG,OAAO,aAAA,EACvB,GAAG,CAAC,EAAE,MAAM,YAAA;CAKnC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,gBAAgB;aAUjC,UAAU,CAAC,EAAE,MAAM;aACnB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM;aAC3B,OAAO,CAAC,EAAE,GAAG;IAXjC;;;;;;OAMG;gBAEC,OAAO,EAAE,MAAM,EACC,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,YAAA,EAC3B,OAAO,CAAC,EAAE,GAAG,YAAA,EAC7B,GAAG,CAAC,EAAE,MAAM;CAKnB;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,gBAAgB;IACzD;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM;CAIrE;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,gBAAgB;aAMZ,SAAS,CAAC,EAAE,MAAM;IAL/D;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAkB,SAAS,CAAC,EAAE,MAAM,YAAA,EAAE,GAAG,CAAC,EAAE,MAAM;CAIhF;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,gBAAgB;IAC1D;;;;OAIG;gBACS,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM;CAIrE;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,gBAAgB;aAQvC,YAAY,CAAC,EAAE,MAAM;IAPzC;;;;OAIG;gBAEC,OAAO,EAAE,MAAM,EACC,YAAY,CAAC,EAAE,MAAM,YAAA,EACrC,GAAG,CAAC,EAAE,MAAM;CAKnB;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,gBAAgB;aAKf,KAAK,CAAC,EAAE,MAAM;IAJ3D;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,MAAM,YAAA;CAI9D"}
|
package/dist/src/errors.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NaverSeries SDK 기본 최상위 에러 클래스
|
|
3
|
+
*/
|
|
1
4
|
export class NaverSeriesError extends Error {
|
|
2
5
|
cause;
|
|
3
6
|
url;
|
|
7
|
+
/**
|
|
8
|
+
* @param message 에러 메시지
|
|
9
|
+
* @param cause 원인이 되는 하위 에러 객체
|
|
10
|
+
* @param url 요청을 시도한 URL
|
|
11
|
+
*/
|
|
4
12
|
constructor(message, cause, url) {
|
|
5
13
|
super(message);
|
|
6
14
|
this.cause = cause;
|
|
@@ -8,10 +16,20 @@ export class NaverSeriesError extends Error {
|
|
|
8
16
|
this.name = "NaverSeriesError";
|
|
9
17
|
}
|
|
10
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* 네이버 시리즈 API 또는 HTTP 응답 코드 오류 (4xx, 5xx 등)
|
|
21
|
+
*/
|
|
11
22
|
export class NaverSeriesApiError extends NaverSeriesError {
|
|
12
23
|
statusCode;
|
|
13
24
|
errorCode;
|
|
14
25
|
rawData;
|
|
26
|
+
/**
|
|
27
|
+
* @param message 에러 메시지
|
|
28
|
+
* @param statusCode HTTP 응답 상태 코드 (예: 500, 403)
|
|
29
|
+
* @param errorCode 내부 에러 코드
|
|
30
|
+
* @param rawData 원본 응답 본문/데이터
|
|
31
|
+
* @param url 요청 대상 URL
|
|
32
|
+
*/
|
|
15
33
|
constructor(message, statusCode, errorCode, rawData, url) {
|
|
16
34
|
super(message, undefined, url);
|
|
17
35
|
this.statusCode = statusCode;
|
|
@@ -20,36 +38,75 @@ export class NaverSeriesApiError extends NaverSeriesError {
|
|
|
20
38
|
this.name = "NaverSeriesApiError";
|
|
21
39
|
}
|
|
22
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* 네트워크 연결 오류 또는 소켓 장애
|
|
43
|
+
*/
|
|
23
44
|
export class NaverSeriesNetworkError extends NaverSeriesError {
|
|
45
|
+
/**
|
|
46
|
+
* @param message 에러 메시지
|
|
47
|
+
* @param cause 원인 에러 객체
|
|
48
|
+
* @param url 요청 대상 URL
|
|
49
|
+
*/
|
|
24
50
|
constructor(message, cause, url) {
|
|
25
51
|
super(message, cause, url);
|
|
26
52
|
this.name = "NaverSeriesNetworkError";
|
|
27
53
|
}
|
|
28
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* HTTP 요청 시간 초과 오류
|
|
57
|
+
*/
|
|
29
58
|
export class NaverSeriesTimeoutError extends NaverSeriesError {
|
|
30
59
|
timeoutMs;
|
|
60
|
+
/**
|
|
61
|
+
* @param message 에러 메시지
|
|
62
|
+
* @param timeoutMs 초과된 타임아웃 제한 시간 (ms)
|
|
63
|
+
* @param url 요청 대상 URL
|
|
64
|
+
*/
|
|
31
65
|
constructor(message, timeoutMs, url) {
|
|
32
66
|
super(message, undefined, url);
|
|
33
67
|
this.timeoutMs = timeoutMs;
|
|
34
68
|
this.name = "NaverSeriesTimeoutError";
|
|
35
69
|
}
|
|
36
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* 요청한 작품 또는 리소스를 찾을 수 없음 (404)
|
|
73
|
+
*/
|
|
37
74
|
export class NaverSeriesNotFoundError extends NaverSeriesError {
|
|
75
|
+
/**
|
|
76
|
+
* @param message 에러 메시지
|
|
77
|
+
* @param cause 원인 에러 객체
|
|
78
|
+
* @param url 요청 대상 URL
|
|
79
|
+
*/
|
|
38
80
|
constructor(message, cause, url) {
|
|
39
81
|
super(message, cause, url);
|
|
40
82
|
this.name = "NaverSeriesNotFoundError";
|
|
41
83
|
}
|
|
42
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* 요청 한도 초과 오류 (HTTP 429 Too Many Requests)
|
|
87
|
+
*/
|
|
43
88
|
export class NaverSeriesRateLimitError extends NaverSeriesError {
|
|
44
89
|
retryAfterMs;
|
|
90
|
+
/**
|
|
91
|
+
* @param message 에러 메시지
|
|
92
|
+
* @param retryAfterMs Retry-After 헤더 기반 재시도 대기 권장 시간 (ms)
|
|
93
|
+
* @param url 요청 대상 URL
|
|
94
|
+
*/
|
|
45
95
|
constructor(message, retryAfterMs, url) {
|
|
46
96
|
super(message, undefined, url);
|
|
47
97
|
this.retryAfterMs = retryAfterMs;
|
|
48
98
|
this.name = "NaverSeriesRateLimitError";
|
|
49
99
|
}
|
|
50
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* 필수 인자 누락 또는 유효하지 않은 파라미터 전달 시 발생하는 유효성 검증 오류
|
|
103
|
+
*/
|
|
51
104
|
export class NaverSeriesValidationError extends NaverSeriesError {
|
|
52
105
|
field;
|
|
106
|
+
/**
|
|
107
|
+
* @param message 에러 메시지
|
|
108
|
+
* @param field 유효성 검증에 실패한 필드명 (예: 'keyword', 'novelId')
|
|
109
|
+
*/
|
|
53
110
|
constructor(message, field) {
|
|
54
111
|
super(message);
|
|
55
112
|
this.field = field;
|
package/dist/src/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,gBAAiB,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAQnB;IACA;IARpB;;;;OAIG;IACH,YACI,OAAe,EACC,KAAuB,EACvB,GAAY;QAE5B,KAAK,CAAC,OAAO,CAAC,CAAA;QAHE,UAAK,GAAL,KAAK,CAAkB;QACvB,QAAG,GAAH,GAAG,CAAS;QAG5B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;IAClC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,gBAAgB;IAUjC;IACA;IACA;IAXpB;;;;;;OAMG;IACH,YACI,OAAe,EACC,UAAmB,EACnB,SAA2B,EAC3B,OAAa,EAC7B,GAAY;QAEZ,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;QALd,eAAU,GAAV,UAAU,CAAS;QACnB,cAAS,GAAT,SAAS,CAAkB;QAC3B,YAAO,GAAP,OAAO,CAAM;QAI7B,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;IACrC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,gBAAgB;IACzD;;;;OAIG;IACH,YAAY,OAAe,EAAE,KAAuB,EAAE,GAAY;QAC9D,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAA;IACzC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,gBAAgB;IAMZ;IAL7C;;;;OAIG;IACH,YAAY,OAAe,EAAkB,SAAkB,EAAE,GAAY;QACzE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;QADW,cAAS,GAAT,SAAS,CAAS;QAE3D,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAA;IACzC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,wBAAyB,SAAQ,gBAAgB;IAC1D;;;;OAIG;IACH,YAAY,OAAe,EAAE,KAAuB,EAAE,GAAY;QAC9D,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAA;IAC1C,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,gBAAgB;IAQvC;IAPpB;;;;OAIG;IACH,YACI,OAAe,EACC,YAAqB,EACrC,GAAY;QAEZ,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;QAHd,iBAAY,GAAZ,YAAY,CAAS;QAIrC,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAA;IAC3C,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,gBAAgB;IAKf;IAJ7C;;;OAGG;IACH,YAAY,OAAe,EAAkB,KAAc;QACvD,KAAK,CAAC,OAAO,CAAC,CAAA;QAD2B,UAAK,GAAL,KAAK,CAAS;QAEvD,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAA;IAC5C,CAAC;CACJ"}
|
package/dist/src/retry.d.ts
CHANGED
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
import { Logger } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* 지수 백오프 및 재시도 실행 옵션
|
|
4
|
+
*/
|
|
2
5
|
export interface RetryOptions {
|
|
6
|
+
/** 최대 재시도 횟수 */
|
|
3
7
|
maxRetries: number;
|
|
8
|
+
/** 초기 지연 시간 (ms, 기본값: 300) */
|
|
4
9
|
baseDelayMs?: number;
|
|
10
|
+
/** 최대 지연 상한 시간 (ms, 기본값: 3000) */
|
|
5
11
|
maxDelayMs?: number;
|
|
12
|
+
/** 로거 */
|
|
6
13
|
logger?: Logger;
|
|
14
|
+
/** 재시도 시 호출되는 콜백 */
|
|
7
15
|
onRetry?: (error: Error, attempt: number, delayMs: number) => Promise<void> | void;
|
|
16
|
+
/** 요청 대상 URL (로그용) */
|
|
8
17
|
url?: string;
|
|
9
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Full-Jitter 지수 백오프 알고리즘을 적용하여 비동기 작업을 재시도 실행합니다.
|
|
21
|
+
*
|
|
22
|
+
* @param fn 실행할 비동기 작업 함수
|
|
23
|
+
* @param options 재시도 옵션
|
|
24
|
+
* @returns 함수 실행 결과
|
|
25
|
+
*/
|
|
10
26
|
export declare function withRetry<T>(fn: () => Promise<T>, options: RetryOptions): Promise<T>;
|
|
11
27
|
//# sourceMappingURL=retry.d.ts.map
|
package/dist/src/retry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/retry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,MAAM,WAAW,YAAY;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClF,GAAG,CAAC,EAAE,MAAM,CAAA;CACf;AAeD,wBAAsB,SAAS,CAAC,CAAC,EAC7B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,YAAY,GACtB,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/retry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,gBAAgB;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kCAAkC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS;IACT,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oBAAoB;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClF,sBAAsB;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;CACf;AAeD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC7B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,EAAE,YAAY,GACtB,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
|