solver-sdk
Version:
SDK для интеграции с Code Solver Backend API
83 lines (63 loc) • 2.52 kB
Markdown
# Аутентификация в Solver SDK
Этот документ описывает методы аутентификации в Solver SDK.
## Аутентификация HTTP API
SDK поддерживает два основных метода аутентификации:
### API ключ
```javascript
const sdk = new CodeSolverSDK({
baseURL: 'https://api.example.com',
apiKey: 'your-api-key'
});
```
### Пользовательские заголовки
```javascript
const sdk = new CodeSolverSDK({
baseURL: 'https://api.example.com',
headers: {
'Authorization': 'Bearer your-jwt-token'
}
});
```
## Аутентификация WebSocket
SDK автоматически использует API-ключ для аутентификации WebSocket соединений. Отдельных действий не требуется.
Для некоторых методов можно указать дополнительный токен авторизации:
```javascript
// Для потоковой передачи чата с мышлением
const options = {
model: 'claude-3-7-sonnet-20240229',
thinking: true,
authToken: 'your-auth-token' // Опциональный параметр
};
// Запрос с аутентификацией
const response = await sdk.chat.streamChatWithThinking(messages, options, handleEvent);
```
## Обработка ошибок аутентификации
```javascript
// Обработчик событий WebSocket
const handleEvent = (eventType, data) => {
if (eventType === 'authentication_error') {
console.error('Ошибка аутентификации:', data.message);
// Реакция на ошибку аутентификации
if (data.code === 'TOKEN_EXPIRED') {
// Получение нового токена
}
}
};
```
## Пример использования
```javascript
// Создание экземпляра SDK
const sdk = new CodeSolverSDK({
baseURL: 'https://api.example.com',
apiKey: 'your-api-key'
});
// Создание рассуждения
const reasoning = await sdk.reasoning.createReasoning({
projectId: 'project-id',
query: 'Объясни этот проект'
});
// Подключение к WebSocket (аутентификация выполняется автоматически)
await sdk.reasoning.connectWebSocket(reasoning.id);
// Запуск процесса
await sdk.reasoning.startReasoning(reasoning.id);
```