simpler-auth+no-overlay
Some checks failed
Deploy / deploy (push) Has been skipped
CI / lint (push) Failing after 8s
CI / test (push) Failing after 3m57s

This commit is contained in:
2025-09-01 20:36:15 +03:00
parent a44bf3302b
commit 6c3262edbe
20 changed files with 1516 additions and 686 deletions

View File

@@ -52,27 +52,56 @@ filename.ext
```
**Ошибки:**
- `401 Unauthorized` - неверный токен
- `413 Payload Too Large` - превышена квота
- `400 Bad Request` - нет файлов или все файлы пустые
- `401 Unauthorized` - неверный или отсутствующий токен
- `413 Payload Too Large` - превышена квота пользователя или лимит размера файла
- `415 Unsupported Media Type` - неподдерживаемый тип файла
- `500 Internal Server Error` - ошибка загрузки в S3 или обновления квоты
### 3. Получение файлов
### 3. Получение информации о текущем пользователе
#### GET /
Получает информацию о залогиненном пользователе с данными о квоте.
**Заголовки:**
```
Authorization: Bearer <token>
```
**Ответ:**
```json
{
"user_id": "user123",
"username": "john_doe",
"token_type": "session",
"created_at": "1642248600",
"last_activity": "1642335000",
"auth_data": "{\"roles\": [\"user\"]}",
"device_info": "{\"platform\": \"web\"}",
"quota": {
"current_quota": 1073741824,
"max_quota": 5368709120,
"usage_percentage": 20.0
}
}
```
**Ошибки:**
- `401 Unauthorized` - неверный или отсутствующий токен
### 4. Получение файлов
#### GET /{filename}
Получает файл по имени.
**Параметры запроса:**
- `s=<shout_id>` - добавляет оверлей с данными shout (только для изображений)
**Примеры:**
```
GET /image.jpg
GET /image.jpg?s=123
GET /image_300.jpg
GET /image_300.jpg/webp
```
### 4. Управление квотами
### 5. Управление квотами
#### GET /quota
Получает информацию о квоте пользователя.
@@ -139,10 +168,10 @@ GET /quota?user_id=user123
| Код | Описание |
|-----|----------|
| 200 | Успешный запрос |
| 400 | Неверные параметры запроса |
| 400 | Неверные параметры запроса или нет файлов |
| 401 | Неавторизованный доступ |
| 404 | Файл не найден |
| 413 | Превышена квота |
| 413 | Превышена квота пользователя или лимит размера файла (500 МБ) |
| 415 | Неподдерживаемый тип файла |
| 500 | Внутренняя ошибка сервера |
@@ -155,6 +184,12 @@ curl -X POST http://localhost:8080/ \
-F "file=@image.jpg"
```
### Получение информации о пользователе
```bash
curl -H "Authorization: Bearer your-token" \
http://localhost:8080/
```
### Получение миниатюры
```bash
curl http://localhost:8080/image_300.jpg