Ana içeriğe geç

Başlarken

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

Resmi Site

OneEntry Platform hakkında daha fazla bilgi edinmek için resmi OneEntry web sitesini https://oneentry.cloud ziyaret edin.

Kayıt Ol

OneEntry ile başlamanız için https://account.oneentry.cloud/authentication/register adresinden bir hesap oluşturun.

Kurulum

OneEntry Platform SDK'yı projenize kurmak için aşağıdaki komutu çalıştırın:

npm install oneentry

OneEntry Platform SDK'yı projenizde kullanmak için defineOneEntry fonksiyonunu içe aktarın:

import { defineOneEntry } from 'oneentry'

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

Ya da

const config = {
token: 'your-app-token',
}
const api = defineOneEntry('your-url', config)

Konfigürasyon

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

  • 'token' - Projeniz "Güvenlik API Token" gerektiriyorsa 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 belirlemek için "langCode" ayarlayın. Bu parametreyi bir kez belirterek, ONEENTRY API yöntemlerine langCode geçmek zorunda kalmazsınız. Varsayılan bir dil belirtmezseniz, varsayılan olarak "en_US" olacaktır.

  • 'traficLimit' - Bazı yöntemler, aldığınız verilerin eksiksiz ve çalışması kolay olmasını sağlamak için CMS'ye birden fazla istek gönderir. Bu parametreyi "true" olarak ayarlayarak trafiği tasarruf edin ve hangi verilere ihtiyacınız olduğuna kendiniz karar verin. Varsayılan değer "false"dur.

  • 'auth' - Yetkilendirme ayarlarıyla bir nesne. Varsayılan olarak, SDK, kullanıcının oturumunda saklanan token'larla çalışacak şekilde yapılandırılmıştır ve sizden ek bir çalışma gerektirmez. Ancak, SDK oturumlar arasında oturum durumunu korumaz. Bu ayarlarla memnunsanız, 'auth' değişkenini hiç geçmenize gerek yoktur.

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

  • 'refreshToken' - Kullanıcının yenileme token'ı. Kullanıcının oturumunu başlatma sırasında burada depolamak için buradan geçin.

  • 'saveFunction' - Yenileme token'ının güncellenmesini yöneten bir fonksiyon. Token'ı oturumlar arasında saklamak istiyorsanız, örneğin yerel depolamada, bunu yapan bir fonksiyon sağlayın. Fonksiyon, token'ı içeren dizeyi alacak bir parametre kabul etmelidir.

  • 'customAuth' - Yetkilendirmeyi yapılandırmak ve token'ları kendiniz yönetmek istiyorsanız, bu bayrağı true olarak ayarlayın. SDK'nın varsayılan ayarlarını kullanmayı tercih ediyorsanız, false olarak ayarlayın veya tamamen atlayın.

Token koruması ve oturumlar arasında durumu koruyan 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,
},
})

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'),
},
})

Token'ları kendiniz yönetmeyi seçerseniz, token'ı metoda 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ı yetkilendirmesi gerektirmeyen bir yöntemse ç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ı tercih ettiyseniz, 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" seçeneğini açı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: 'refresh.token',
saveFunction: saveTokenFromLocalStorage,
},
})

Hatalar

SDK içinde hataları yönetmek istiyorsanız, "errors" özelliğini varsayılan ayarında bırakın. Bu durumda, ya varlık verilerini ya da bir hata nesnesi alırsınız. Örneğin, statusCode özelliğini ".hasOwnProperty" ile kontrol ederek bir tür kontrolü yapmanız gerekir.

Ancak, "try catch(e) " yapısını kullanmayı tercih ediyorsanız, "isShell" özelliğini "false" olarak ayarlayın. Bu durumda, hatayı "try catch(e) " kullanarak yönetmeniz gerekecektir.

Ayrıca, SDK içinde uygun hata koduyla çağrılacak özel fonksiyonlar geçebilirsiniz. Bu fonksiyonlar, gerektiği gibi işleyebileceğiniz bir hata nesnesini argüman olarak alır.

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),
},
},
})