@cayla
Настройка прокси-сервера в проекте Next.js может быть полезной, когда вам нужно избежать проблем с CORS или направить API-запросы на сервер, находящийся по другому адресу, во время разработки. Один из способов сделать это — использовать файл next.config.js
с rewrites
или использовать http-proxy-middleware
.
rewrites
в next.config.js
Next.js предоставляет встроенную поддержку для переписывания URL-путей через rewrites
, что может помочь в организации прокси-запросов.
1 2 3 4 5 6 7 8 9 10 11 12 |
// next.config.js module.exports = { async rewrites() { return [ { source: '/api/:path*', // на какой путь реагировать destination: 'https://external-api.example.com/:path*', // куда перенаправлять запрос }, ] }, } |
http-proxy-middleware
Этот метод может быть более гибким, особенно если у вас сложные правила маршрутизации или вы хотите манипулировать запросами/ответами.
1
|
npm install http-proxy-middleware --save |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
// pages/api/proxy.js import { createProxyMiddleware } from 'http-proxy-middleware'; export const config = { api: { bodyParser: false, // отключает встроенный парсер body }, }; export default createProxyMiddleware({ target: 'https://external-api.example.com', changeOrigin: true, pathRewrite: { '^/api/proxy': '', // переписывает путь }, }); |
Эти методы помогут настроить прокси в вашем приложении Next.js и избежать проблем с CORS в процессе разработки.