如何访问 Nuxt3 路由中间件中的 `req` 对象?

问题描述 投票:0回答:1

我想像访问 Nuxt2 中间件一样访问 Nuxt3 路由中间件中的 req 对象。

代码如下:

Nuxt2

// middleware/auth.js
export default ({ store, req }) => {
  if (req) {
    store.dispatch('auth/initAuth', { req })
  }
}

Nuxt3

// middleware/auth.ts
export default defineNuxtRouteMiddleware((to, from) => {
  if (to.params.id === '1') {
    return abortNavigation()
  }
  return navigateTo('/')
})

我如何在 Nuxt 3 中间件中获得这个

req
对象,因为据我所知,我认为在 Nuxt3 路由中间件中我们只能获得
to
from
参数

javascript vue.js nuxt.js nuxtjs3
1个回答
0
投票

您需要在

/server/middleware
中创建服务器中间件并使用
defineEventHandler
处理程序:

export default defineEventHandler((event) => {
  console.log('New request: ' + event.node.req.url)
})

在这里您可以找到更多信息:https://nuxt.com/docs/guide/directory-structure/server

© www.soinside.com 2019 - 2024. All rights reserved.