Инициализация
Перед началом работы с SDK необходимо создать его экземпляр и настроить подключение к вашему бэкенду.
Создание экземпляра
typescript
import Kodzero from 'kodzero-front-sdk-alfa'
const kodzero = new Kodzero({
host: 'https://api.your-backend.com',
authCollection: 'auth'
})Параметры конфигурации
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
host | string | ✅ | Базовый URL вашего Kodzero бэкенда |
authCollection | string | ✅ | Название коллекции, используемой для аутентификации |
host
URL вашего бэкенда без завершающего слеша:
javascript
// ✅ Правильно
host: 'https://api.example.com'
host: 'https://example.com/api'
// ❌ Неправильно
host: 'https://api.example.com/'
host: 'api.example.com'authCollection
Название коллекции в базе данных, которая хранит данные пользователей и используется для аутентификации:
javascript
authCollection: 'auth' // обычно используется 'auth'
authCollection: 'users' // или 'users', в зависимости от настройки бэкендаСтруктура экземпляра
После создания экземпляра вам доступны следующие свойства и методы:
typescript
const kodzero = new Kodzero({ host, authCollection })
// Доступные свойства
kodzero.host // URL бэкенда
kodzero.authCollection // Название коллекции для аутентификации
kodzero.auth // Модуль аутентификации
kodzero.tokensManager // Менеджер токенов
// Методы
kodzero.createModel() // Создание модели для работы с коллекциейАвтоматическое добавление токенов
SDK автоматически добавляет токен авторизации ко всем исходящим запросам:
javascript
// После успешной авторизации...
await kodzero.auth.login({ email, password })
// ...все последующие запросы будут содержать заголовок Authorization
// Authorization: <access_token>Это поведение реализовано через middleware:
typescript
this.api.middlewares.request.use((req) => {
const accessToken = this.tokensManager.access
if (accessToken) req.headers['Authorization'] = accessToken
return req
})Использование в разных окружениях
Веб-приложение (React)
typescript
// src/services/kodzero.ts
import Kodzero from 'kodzero-front-sdk-alfa'
export const kodzero = new Kodzero({
host: import.meta.env.VITE_API_URL,
authCollection: 'auth'
})
// Использование в компоненте
import { kodzero } from '@/services/kodzero'
function LoginComponent() {
const handleLogin = async () => {
await kodzero.auth.login({ email, password })
}
// ...
}Vue.js
typescript
// src/plugins/kodzero.ts
import Kodzero from 'kodzero-front-sdk-alfa'
export const kodzero = new Kodzero({
host: import.meta.env.VITE_API_URL,
authCollection: 'auth'
})
// Или как Vue plugin
export default {
install(app) {
app.config.globalProperties.$kodzero = kodzero
app.provide('kodzero', kodzero)
}
}React Native
typescript
// src/api/kodzero.ts
import Kodzero from 'kodzero-front-sdk-alfa'
import Config from 'react-native-config'
export const kodzero = new Kodzero({
host: Config.API_URL,
authCollection: 'auth'
})Следующие шаги
После инициализации SDK вы можете: