Ana içeriğe geç

Başlarken

NPM VersionBundle Size

OneEntry Platform SDK, OneEntry Platform API ile etkileşim kurmanın kolay bir yolunu sağlayan bir SDK'dır.


🚀 Quick Start

Get up and running with OneEntry in 3 simple steps:

1️⃣ Install the package

npm install oneentry

2️⃣ Initialize the SDK

import { defineOneEntry } from 'oneentry';

const api = defineOneEntry('your-project-url', {
token: 'your-api-token',
langCode: 'en_US'
});

3️⃣ Start using the API

// Fetch products
const products = await api.Products.getProducts({ limit: 10 });

// Get user profile
const user = await api.Users.getUser();

// Submit a form
const formData = await api.FormData.postFormsData('contact-form', {
name: 'John Doe',
email: 'john@example.com'
});

🎉 That's it! You're ready to build amazing applications with OneEntry.


🌐 Kaynaklar


✨ Ana Özellikler

🔐
Secure Authentication

Built-in token management and OAuth support

🌍
Multi-language

i18n support with automatic language detection

📝
TypeScript

Full type definitions for better DX

Lightweight

Optimized bundle size for production

🔌
Modular Architecture

24 specialized modules for all your needs

🛡️
Error Handling

Custom error handlers and shell mode


📖 Detaylı Kullanım

Tüm Mevcut Modüller

Gerekli tüm modülleri içe aktarın ve parçalayın:


import { defineOneEntry } from 'oneentry'

const config = {
token: 'your-app-token',
}
const {
Admins,
AttributesSets,
AuthProvider,
Blocks,
Events,
FileUploading,
Forms,
FormData,
GeneralTypes,
IntegrationCollections,
Locales,
Menus,
Orders,
Pages,
Payments,
ProductStatuses,
Products,
Settings,
System,
Templates,
TemplatePreviews,
Users,
WS
} = defineOneEntry('your-url', config);

Ya da

const config = {
token: 'your-app-token',
};

const api = defineOneEntry('your-url', config);

Yapılandırma

Yapılandırıcının ikinci parametresi 'config' alır. Aşağıdaki değerleri içerir:

  • 'token' - Projeniz için güvenli "Güvenlik API Token" anahtarını ayarlayın. Sertifika koruması kullanıyorsanız, bu değişkeni geçmeyin. Projenizin güvenliği hakkında daha fazla bilgi için buraya göz atabilirsiniz.
  • 'langCode' - Varsayılan dili ayarlamak için "langCode" ayarlayın. Bu parametreyi bir kez belirterek, langCode'u ONEENTRY API yöntemlerine geçmek zorunda kalmazsınız. Varsayılan dili geçmediyseniz, "en_US" olarak ayarlanacaktır.
  • 'traficLimit' - Bazı yöntemler, aldığınız verilerin eksiksiz ve çalışması kolay olması için OneEntry'ye birden fazla istek kullanır. Bu parametre için "true" değerini geçerek trafiği tasarruf edebilir ve hangi verilere ihtiyacınız olduğuna kendiniz karar verebilirsiniz. Varsayılan değer "false"dur.
  • 'auth' - Yetkilendirme ayarlarıyla bir nesne. Varsayılan olarak, SDK, kullanıcının oturumundaki token'larla çalışacak şekilde yapılandırılmıştır ve sizden ek bir çalışma gerektirmez. Aynı zamanda, SDK oturumlar arasında oturum durumunu saklamaz. Bu ayarlarla memnunsanız, 'auth' değişkenini hiç geçmeyin.

'auth' aşağıdaki ayarları içerir:

  • 'refreshToken' - Kullanıcının yenileme token'ı. Başlatma sırasında kullanıcının oturumunu geri yüklemek için buraya deposundan aktarın.
  • 'saveFunction' - Yenileme token'ı ile çalışan bir fonksiyon. Token'ı oturumlar arasında saklamak istiyorsanız, örneğin yerel depolamada, bunu yapan bir fonksiyonu buraya geçin. Fonksiyon, token ile birlikte geçilecek bir parametre almalıdır.
  • 'customAuth' - Yetkilendirmeyi kendiniz yapılandırmak ve token'larla çalışmak istiyorsanız, bu bayrağı true olarak ayarlayın. SDK ayarlarını kullanmak istiyorsanız, false olarak ayarlayın veya hiç geçmeyin.
  • 'providerMarker' - Yetkilendirme sağlayıcısı için işaretçi. Varsayılan: 'email'. Token koruması ve oturumlar arasında durumu saklayan otomatik kimlik doğrulama ile bir yapılandırma örneği
const tokenFunction = (token) => {
localStorage.setItem('refreshToken', token);
};

const api = defineOneEntry('https://my-project.oneentry.cloud', {
token: 'my-token',
langCode: 'en_US',
auth: {
refreshToken: localStorage.getItem('refreshToken'),
saveFunction: tokenFunction,
providerMarker: 'email'
},
});

Sertifika ile korunan bir yapılandırma örneği, yetkilendirme sistemini kendiniz yapılandırmanıza ve isteklerde verileri saklamanıza olanak tanır.

const api = defineOneEntry('https://my-project.oneentry.cloud', {
langCode: 'en_US',
traficLimit: true,
auth: {
customAuth: true,
refreshToken: localStorage.getItem('refreshToken'),
providerMarker: 'email'
},
});

Eğer token'ları kendiniz yapılandırmayı seçtiyseniz, token'ı yönteme aşağıdaki gibi geçebilirsiniz. Ara yöntem, isteğe bir erişim token'ı geçirmenizi sağlar. Ardından gerekli yöntemi çağırın. Bu yöntem (setAccessToken), kullanıcı kimlik doğrulaması gerektirmeyen bir yöntem çağrılmadığında çağrılmamalıdır.

const user = api.Users.setAccessToken('my.access.token').getUser();

Bağlantı güvenliğini sağlamak için token korumasını seçtiyseniz, token'ınızı isteğe bağlı bir parametre olarak fonksiyona geçin.

Token'ı aşağıdaki gibi alabilirsiniz

  1. Kişisel hesabınıza giriş yapın
  2. "Projeler" sekmesine gidin ve bir proje seçin
  3. "Erişim" sekmesine gidin
  4. "Güvenlik API Token" anahtarını ayarlayın
  5. Projeye giriş yapın, ayarlar bölümüne gidin ve token sekmesini açın
  6. Projenizin token'ını alın ve kopyalayın

Projenizi korumak için bir tls sertifikası da bağlayabilirsiniz. Bu durumda, "token"ı hiç geçmeyin. Sertifika kullanırken, projenizde bir proxy ayarlayın. URL parametresi olarak boş bir dize geçin. Güvenlik hakkında daha fazla bilgi edinin

const saveTokenFromLocalStorage = (token) => {
localStorage.setItem('refreshToken', token);
};

const api = defineOneEntry('your-url', {
token: 'my-token',
langCode: 'my-langCode',
auth: {
customAuth: false,
userToken: 'rerfesh.token',
saveFunction: saveTokenFromLocalStorage,
providerMarker: 'email'
},
});

Hatalar

Eğer SDK içinde hatalardan kaçınmak istiyorsanız, "errors" özelliğini varsayılan olarak bırakın. Bu durumda, ya varlık verilerini ya da hata nesnesini alırsınız. Bir tür kontrolü yapmanız gerekir. Örneğin, statusCode özelliğini ".hasOwnProperty" ile kontrol ederek.

Ancak, "try catch(e) " yapısını kullanmak istiyorsanız, "isShell" özelliğini "false" değerine ayarlayın. Bu durumda, hatayı "try catch(e) " kullanarak ele almanız gerekir.

Ayrıca, SDK içinde uygun hata kodu ile çağrılacak özel fonksiyonlar geçebilirsiniz. Bu fonksiyonlar bir hata nesnesini argüman olarak alır. Kendiniz işleyebilirsiniz.

const api = defineOneEntry('your-url', {
token: 'my-token',
langCode: 'my-langCode',
errors: {
isShell: false,
customErrors: {
400: (error) => console.error(error.message),
404: (error) => console.error(error.message),
500: (error) => console.error(error.message),
},
},
});

📚 Sonraki Adımlar

Daha fazla bilgi edinmek için kapsamlı kılavuzlarımıza göz atın: