SelSup Developers

Entegreleme Temellikleri · Rehberler

Başlamak

Doğrulama, ilk talep, yerleşik hatalar, sayfalama ve güvenli bir üretim dağıtımı.

4 bölümlerGeliştiriciler rehberi

Özel bir token ve bir okuma işlevi ile başlayın. error kullanım ve tekrar deneme davranışları test edildikten sonra mutasyonlar ekleyin.

Arka Yönetici ve Entegreciler

01

Kimlik doğrulama ve token depolama

API tokenini Authorization başlığından Bearer önlüğü olmadan doğrudan gönderin.

Her entegrasyon için ayrı bir token oluşturun. Sonra diğerlerini kesmeden bir bağlantıyı iptal edebilirsiniz ve sadece gerekli izinleri verebilirsiniz.

Tokeni sunucu tarafındaki sırlarda saklayın. JavaScript tarayıcı, bir mobil uygulama, bir URL, günlük veya analizde asla göndermeyin.

!
Bu OAuth değil .

Bearer veya Basic eklemeyin. Authorization değeri SelSup tokeninin kendisidir.

İlk talep · cURL
curl --request GET 'https://api.selsup.ru/api/brand/find?limit=50&page=1' \
  --header 'Authorization: YOUR_API_TOKEN'

02

Hatalar ve mesaj yerleri

error sabit alanına dal ve localMessage'i yalnızca insan okuyabilen çıkış için kullan.

Bir uygulama error genellikle error, localMessage ve params içerir. Sunucu, token sahibi olan kullanıcının lang alanını kullanarak localMessage'i tercüme eder.

Belgeleme dili ve Accept-Language error yerel yerini değiştirmez. localMessage'i asla kodda karşılaştırmayın veya bir makine durumu olarak kalmayın.

i
Diagnostik bağlam

HTTP durumunu, error, params, talep zamanı ve ilişki kimliğini kaydet.

Başvuru error sözleşmesi · JSON
{
  "error": "brand_already_exists",
  "localMessage": "Brand Base already exists",
  "params": {
    "name": "Base"
  }
}

03

Büyük koleksiyonları sayfalama

Stabil sıralama kullanın ve "NextPage" yanlış olduğunda veya geri gönderilen sayfa sınırtan kısa olduğunda durun.

count=true, ek bir sayma sorgusunu tetikleyebilir.

Veriler sayfalar arasında değişiyor. Tekrarlı senkronizasyon için değişmez bir tanımlayıcıya göre sıralayın ve ayrı bir artış akışında işlem değişiklikleri yapın.

Sayfalama döngüsü · JavaScript
let page = 1;
let hasNextPage = true;

while (hasNextPage) {
  const url = new URL('https://api.selsup.ru/api/brand/find');
  url.searchParams.set('limit', '500');
  url.searchParams.set('page', String(page));
  url.searchParams.set('sortBy', 'BRANDID');
  url.searchParams.set('ascending', 'true');

  const response = await fetch(url, {
    headers: { Authorization: process.env.SELSUP_API_TOKEN }
  });
  if (!response.ok) throw await response.json();

  const result = await response.json();
  await savePage(result.rows);
  hasNextPage = result.hasNextPage;
  page += 1;
}

04

Üretim kontrol listesini

  1. 1

    Ayrı okuma ve yazma

    GET isteklerini önce doğrulayın. Mutasyonlar için test birimleri ve açık bir onay adımı kullanın.

  2. 2

    Zamanlama ve tekrar deneme ayarları

    Sadece ağ hatalarını ve güvenli işlemleri tekrar deneyin. POST'in kendi idempotency anahtarınız olmadan bir kopya oluşturabilir.

  3. 3

    Eşzamanlılık sınırlaması

    Son nokta sınırlarını sayın ve eksponensel bir geri çekim ve küçük bir rastgele bir gerginlik ile bir kuyruk kullanın.

  4. 4

    Sonuçları uyumlandır

    Toplu senkronizasyondan sonra sayıları ve örnek kimliklerini karşılaştırın, sonra farklılıkları ayrı bir kuyrukta yerleştirin.

!
Canlı hesap verileri

Deneme, talebi token sahibi hesabına gönderir. Belge yazılar için bir onay ekler, ancak yine de test kayıtlarını kullanmalısınız.