简体   繁体   English

NuxtJs/axios api 404 未找到

[英]NuxtJs/axios api 404 not found

Using nuxt and for http request axios , here is config:使用nuxt和 http 请求axios ,这里是配置:

nuxt.config.js nuxt.config.js

  axios: {
    proxy: true,
    https: true,
    prefix: '/api'
  }

form.vue表单.vue

this.$axios.$post('/mail', {
...
}

After submit the form, request url is:提交表格后,请求 url 是:

http://localhost:3000/api/mail

But:但:

POST http://localhost:3000/api/mail 404 (Not Found)发布 http://localhost:3000/api/mail 404(未找到)

In my project:在我的项目中:

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

index.js: index.js:

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

mail.js邮件.js

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

Any idea?任何想法? .. ..

Did you specify the address of the server to which you want to access as proxy?您是否指定了要作为代理访问的服务器的地址?

// nuxt.config.js

proxy: {
  'prefix': 'url'
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM