# Using npm
npm install h3-defu
# Using yarn
yarn install h3-defu
# Using pnpm
pnpm install h3-defu
import { createServer } from 'node:http'
import { createApp, eventHandler, toNodeListener } from 'h3'
import { getQueryWithDefaults, readBodyWithDefaults } from 'h3-defu'
const app = createApp()
app.use('/api/test', eventHandler(async (event) => {
// Default body
// example BODY: { show: false }
// expected: { show: false, name: 'Anonymous' }
const body = await readBodyWithDefaults(event, {
show: true,
name: 'Anonymous'
})
// Default query
// example: /api/test?page=2
// expected: { page: 1, limit: 10 }
const query = getQueryWithDefaults(event, {
page: 1,
limit: 10
})
return {
body,
query
}
}))
createServer(toNodeListener(app)).listen(process.env.PORT || 3000)
- Clone this repository
- Install dependencies using
pnpm install
- Run interactive tests using
pnpm dev
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
README Inspiration
by @zernonia
MIT License © 2022 cpreston321
cpreston321 - @cpreston321
Also, if you like my work, please feel free to buy me a coffee ☕️