使用 Koa 作为 Nuxt 服务器中间件
Using Koa as Nuxt server middleware
我正在尝试使用 Koa 作为 nuxt 的服务器中间件。当我向 localhost:3000/api/users 发出请求时,我没有得到任何回应,找不到路由。我的代码有什么问题?
nuxt.config.js
serverMiddleware: [
// API middleware
'~/api/index.js'
]
index.js
const Koa = require('koa')
const Api = require('koa-router')
const users = require('./routes/users')
const koa = new Koa()
const api = new Api()
api.use('/users', users.routes())
koa.use(api.routes())
koa.use(api.allowedMethods())
// Export the server middleware
module.exports = {
path: '/api',
handler: koa
}
users.js
const Router = require('koa-router')
const router = new Router()
router.get('/users', ctx => {
ctx.body = 'Hello World'
})
module.exports = router
使用 app.callback()
而不是 app
作为处理程序:
import Koa from 'koa'
const app = new Koa()
app.use(ctx => {
ctx.body = 'Hello World'
})
app.listen()
export default {
path: '/example',
handler: app.callback()
}
我正在尝试使用 Koa 作为 nuxt 的服务器中间件。当我向 localhost:3000/api/users 发出请求时,我没有得到任何回应,找不到路由。我的代码有什么问题?
nuxt.config.js
serverMiddleware: [
// API middleware
'~/api/index.js'
]
index.js
const Koa = require('koa')
const Api = require('koa-router')
const users = require('./routes/users')
const koa = new Koa()
const api = new Api()
api.use('/users', users.routes())
koa.use(api.routes())
koa.use(api.allowedMethods())
// Export the server middleware
module.exports = {
path: '/api',
handler: koa
}
users.js
const Router = require('koa-router')
const router = new Router()
router.get('/users', ctx => {
ctx.body = 'Hello World'
})
module.exports = router
使用 app.callback()
而不是 app
作为处理程序:
import Koa from 'koa'
const app = new Koa()
app.use(ctx => {
ctx.body = 'Hello World'
})
app.listen()
export default {
path: '/example',
handler: app.callback()
}