Kimiko Lisans SDK · 1.0

Node.js Hata Yönetimi

Revizyon 1 · 10.08.2026

typescript
import { KimikoLicenseError } from "@kimiko/license-sdk";

try {
  await licenseClient.validate();
} catch (error) {
  if (!(error instanceof KimikoLicenseError)) throw error;

  switch (error.code) {
    case "NETWORK_ERROR":
      // Doğrulanmış yerel lease varsa imzalı grace politikasını değerlendirin.
      break;
    case "LICENSE_SUSPENDED":
    case "LICENSE_EXPIRED":
    case "LICENSE_REVOKED":
      // Lisanslı işlevleri güvenli biçimde durdurun.
      break;
    case "DOMAIN_VERIFICATION_REQUIRED":
      // Müşteriyi portal doğrulamasına yönlendirin.
      break;
    default:
      // Güvenli genel mesaj ve requestId ile destek akışı.
  }
}

Kullanıcıya error.options.requestId gösterilebilir; error.options.cause veya HTTP yanıt gövdesi gösterilmemelidir. Loglarda yalnız endpoint yolu, sabit hata kodu, requestId, deneme sayısı ve gecikme bulunmalıdır.

RATE_LIMITED yanıtında retryAfterSeconds değerine uyun. LICENSE_NOT_FOUND, PRODUCT_MISMATCH, TOKEN_INVALID veya ACTIVATION_LIMIT_REACHED gibi deterministik hataları kör biçimde tekrar etmeyin.