- Добавлен /api/rates-proxy для загрузки курсов без CORS - Фронтенд загружает курсы через прокси, а не напрямую - convertWithProviderRate возвращает source=no-rates при отсутствии ratesData - ConvertedAmount показывает «Курсы не загружены» (жёлтый) вместо ложного «Глобальный курс» Made-with: Cursor
23 lines
595 B
JavaScript
23 lines
595 B
JavaScript
import { Router } from 'express'
|
|
|
|
const router = Router()
|
|
|
|
router.get('/', async (req, res) => {
|
|
const url = req.query.url
|
|
if (!url) {
|
|
return res.status(400).json({ error: 'Missing url parameter' })
|
|
}
|
|
try {
|
|
const response = await fetch(url, { signal: AbortSignal.timeout(10_000) })
|
|
if (!response.ok) {
|
|
return res.status(502).json({ error: `Upstream returned ${response.status}` })
|
|
}
|
|
const data = await response.json()
|
|
res.json(data)
|
|
} catch (err) {
|
|
res.status(502).json({ error: err.message || 'Failed to fetch rates' })
|
|
}
|
|
})
|
|
|
|
export default router
|