Package Exports
- nuxt-proxy-request
Readme
nuxt-proxy-request
A http proxy module for nuxt(3) powered by h3-proxy .
Why use this module?
- See this issue Error when starting a Project using "http-proxy-middleware" with "npm run start" #15608
Features
- Support for both development and production environments.
- Almost the same API as nuxt-proxy that using http-proxy-middleware, But this module using h3-proxy .
- Support Typescript.
Quick Setup
- Add
nuxt-proxy-request
dependency to your project
# Using pnpm
pnpm add -D nuxt-proxy-request
# Using yarn
yarn add --dev nuxt-proxy-request
# Using npm
npm install --save-dev nuxt-proxy-request
- Add
nuxt-proxy-request
to themodules
section ofnuxt.config.ts
export default defineNuxtConfig({
modules: [
'nuxt-proxy-request'
],
proxy: {
options: [
{
target: 'http://www.example.com',
pathFilter: ['/api/**'],
pathRewrite: {
'^/api': ''
}
}
]
}
// OR
// runtimeConfig: {
// proxy: {...}
// }
})
That's it! You can now use nuxt-proxy-request in your Nuxt app ✨
Notes ⚠️
- Do not use
runtimeConfig.proxy
for configuration when the value of a certain configuration item is a function type, as the function type value in theruntimeConfig
object will be ignored. Please useproxy
for configuration as it has undergone special processing on the internal implementation. - Do not use any imports, in nuxt-proxy-request, the function type option is only copied from the source code of h3-proxy.
- Do not use RegExp literal, using
new RegExp()
instead.
Options
Key | Type | Default value | Description |
---|---|---|---|
options |
object/Array<object> |
[] |
Configure which targets you want to proxy. ⚠️ TIPS: More config object please see h3-proxy's Options, You can pass an array of options for multiple targets or pass an object of options for single target. |
Development
# Install dependencies
pnpm install
# Generate type stubs
pnpm run dev:prepare
# Develop with the playground
pnpm run dev
# Build the playground
pnpm run dev:build
# Run ESLint
pnpm run lint
# Run Vitest
pnpm run test
pnpm run test:watch
# Release new version
pnpm run release