Javascript 找不到NuxtJs/axios api 404

Javascript 找不到NuxtJs/axios api 404,javascript,node.js,vue.js,axios,nuxt.js,Javascript,Node.js,Vue.js,Axios,Nuxt.js,使用numxt和http请求axios,以下是配置: numxt.config.js axios: { proxy: true, https: true, prefix: '/api' } var router = express.Router() router.post('/', function(req, res, next) { var mailInfo = req.body var mailDetails = getMailDetails(mai

使用
numxt
和http请求
axios
,以下是配置:

numxt.config.js

  axios: {
    proxy: true,
    https: true,
    prefix: '/api'
  }
var router = express.Router()
router.post('/', function(req, res, next) {
  var mailInfo = req.body
  var mailDetails = getMailDetails(mailInfo.type, mailInfo.body)
  var mailOptions = {
    priority: 'high',
    from: process.env.SENDGRID_FROM || 'contact@test.com',
    to: mailInfo.to || mailDetails.to,
    subject: mailDetails.subject,
    html: mailDetails.msg
  }
  transporter.sendMail(mailOptions, function(error, info) {
    if (error) {
      console.log(error)
      res.status(404).json(error)
    } else {
      // console.log('Email sent: ' + info.response);
      res.status(200).json({
        message: 'email sent successfully'
      })
    }
  })
})
module.exports = router
form.vue

this.$axios.$post('/mail', {
...
}
提交表单后,请求url为:

http://localhost:3000/api/mail
但是:

404号职位(非 发现)

在我的项目中:

/api
- index.js
- /routes
    -- /mail.js
index.js:

const express = require('express')
var mail = require('./routes/mail.js')
mail.js

  axios: {
    proxy: true,
    https: true,
    prefix: '/api'
  }
var router = express.Router()
router.post('/', function(req, res, next) {
  var mailInfo = req.body
  var mailDetails = getMailDetails(mailInfo.type, mailInfo.body)
  var mailOptions = {
    priority: 'high',
    from: process.env.SENDGRID_FROM || 'contact@test.com',
    to: mailInfo.to || mailDetails.to,
    subject: mailDetails.subject,
    html: mailDetails.msg
  }
  transporter.sendMail(mailOptions, function(error, info) {
    if (error) {
      console.log(error)
      res.status(404).json(error)
    } else {
      // console.log('Email sent: ' + info.response);
      res.status(200).json({
        message: 'email sent successfully'
      })
    }
  })
})
module.exports = router
有什么想法吗?
..

您是否指定了要作为代理访问的服务器的地址

// nuxt.config.js

proxy: {
  'prefix': 'url'
}

我很惊讶你得到了404,考虑到你没有在任何地方听,在
/routes/mail.js
?因为index.js中的代码没有路由设置,并且没有单独设置,所以您没有设置侦听axios请求的服务器。您的客户端代码似乎工作正常。显示代理设置或nuxt.config.js设置。