Some checks failed
Backend CI / test (push) Waiting to run
Backend CI / build (push) Blocked by required conditions
Deploy Mnemo Cards / Deploy Backend (push) Waiting to run
Deploy Mnemo Cards / Deploy Web App (push) Blocked by required conditions
Deploy Mnemo Cards / Final Verification (push) Blocked by required conditions
Mobile App CI / test (push) Has been cancelled
Web App CI / test (push) Has been cancelled
Deploy Telegram Bot / Deploy Telegram Bot (push) Has been cancelled
Mobile App CI / build-android (push) Has been cancelled
Mobile App CI / build-ios (push) Has been cancelled
Web App CI / build (push) Has been cancelled
43 lines
1.4 KiB
Markdown
43 lines
1.4 KiB
Markdown
# Исправление 404 ошибки для /api/v2/purchases/packs/{packId}
|
|
|
|
## Проблема
|
|
|
|
При запросе `POST /api/v2/purchases/packs/{packId}` возвращается 404 Not Found.
|
|
|
|
## Причина
|
|
|
|
Файл `purchases_api_v2.g.dart` не сгенерирован. Роутер не может найти маршрут, потому что сгенерированный код отсутствует.
|
|
|
|
## Решение
|
|
|
|
Нужно запустить code generation для shelf_router:
|
|
|
|
```bash
|
|
cd mnemo_cards_backend
|
|
dart run build_runner build --delete-conflicting-outputs
|
|
```
|
|
|
|
Или использовать скрипт:
|
|
|
|
```bash
|
|
cd mnemo_cards_backend
|
|
./codegen.sh
|
|
```
|
|
|
|
## После генерации
|
|
|
|
1. Перезапустить backend сервер
|
|
2. Проверить, что файл `lib/api/v2/purchases_api_v2.g.dart` создан
|
|
3. Протестировать endpoint:
|
|
```bash
|
|
POST https://api.mnemo-cards.online/api/v2/purchases/packs/{packId}
|
|
```
|
|
|
|
## Проверка
|
|
|
|
После генерации в файле `purchases_api_v2.g.dart` должны быть роуты:
|
|
- `POST /purchases/packs/<packId>` → `createPackPurchase`
|
|
- `POST /purchases/payments` → `createPayment`
|
|
- `GET /purchases/payments/<paymentId>/verify` → `verifyPayment`
|
|
- `GET /purchases/packs/<packId>/status` → `getPackPurchaseStatus`
|
|
|