为什么 nuxt axios 会调用错误的服务器中间件 API?

Why would nuxt axios be calling the wrong server middleware API?

我最近将我的 Nuxt API 拆分成几个文件以便于管理。但是,我调用的时候好像有时会调用错误的文件。

在我的nuxt.config.js中,我有

serverMiddleware:[
    {path:"/user-api",handler:"~/api/user.js"},
    {path:"/blog-api",handler:"~/api/blog.js"},
    {path:"/calendar-api",handler:"~/api/calendar.js"},
    {path:"/gallery-api",handler:"~/api/images.js"},
    {path:"/product-api",handler:"~/api/product.js"},
    {path:"/video-api",handler:"~/api/video.js"},
    {path:"/printful-api",handler:"~/api/printful.js"},
    {path:"/review-api",handler:"~/api/reviews.js"},
    {path:"/email-api",handler:"~/api/email.js"},
    {path:"/search-api",handler:"~/api/search.js"},
    {path:"/requirement-api",handler:"~/api/requirements.js"},
  ]

然后当我加载我想要的页面时

this.video = await this.$axios.$get('/video-api/title',{params:{title:this.$route.params.title}})

最终调用了错误的文件:

  Error... at async api\requirements.js:55:12

为什么会这样做?

似乎仅仅具有相同的结束路径会导致混淆。将呼叫(显然 api)更改为

this.video = await this.$axios.$get('/video-api/videotitle',{params:{title:this.$route.params.title}})

调用的最后部分是唯一的,解决了这个问题。不能说它是理想的,但它确实有效。我发现了这一点,因为它还有其他问题混淆 blog-api/title 以及