@nuxtjs/proxy
Proxy support for nuxt server
Features
✓ Path rewrites
✓ Host based router (useful for staging/test)
✓ Logs / Proxy Events
✓ WebSockets
✓ Auth / Cookie
✓ ...See http-proxy-middleware docs
nuxt generate
(see static target).
Setup
- Add
@nuxtjs/proxy
dependency to your project
yarn add @nuxtjs/proxy # or npm install @nuxtjs/proxy
- Add
@nuxtjs/proxy
to themodules
section ofnuxt.config.js
{
modules: [
// Simple usage
'@nuxtjs/proxy'
],
proxy: {
// see Proxy section
}
}
- Define as many as proxy middleware you want in
proxy
section ofnuxt.config.js
(See proxy section below)
proxy
You can provide proxy config using either object or array.
Array Config
You can use shorthand syntax to configure proxy:
{
proxy: [
// Proxies /foo to http://example.com/foo
'http://example.com/foo',
// Proxies /api/books/*/**.json to http://example.com:8000
'http://example.com:8000/api/books/*/**.json',
// You can also pass more options
[ 'http://example.com/foo', { ws: false } ]
]
}
Object Config
Keys are context
{
proxy: {
// Simple proxy
'/api': 'http://example.com',
// With options
'/api2': {
target: 'http://example.com',
ws: false
},
// Proxy to backend unix socket
'/api3': {
changeOrigin: false,
target: { socketPath: '/var/run/http-sockets/backend.sock' }
}
}
}
Default Options
changeOrigin
andws
options are enabled by default.
You can provide default options to all proxy targets by passing options to module options:
export default {
modules: [
// Disable ws option to all proxified endpoints
['@nuxtjs/proxy', { ws: false }]
],
proxy: [
'http://example.com/foo',
'http://example.com:8000/api/books/*/**.json',
]
}
This will be similar to:
export default {
modules: [
'@nuxtjs/proxy',
],
proxy: [
['http://example.com/foo', { ws: false }],
['http://example.com:8000/api/books/*/**.json', { ws: false }]
]
}
Development
- Clone this repository
- Install dependencies using
yarn install
ornpm install
- Start development server using
npm run dev
License
Copyright (c) Nuxt Community