javascript - 未找到 NuxtJs/axios api 404
问题描述
使用nuxt
and 对于 http 请求axios
,这里是配置:
nuxt.config.js
axios: {
proxy: true,
https: true,
prefix: '/api'
}
表单.vue
this.$axios.$post('/mail', {
...
}
提交表单后,请求 url 为:
http://localhost:3000/api/mail
但:
POST http://localhost:3000/api/mail 404(未找到)
在我的项目中:
/api
- index.js
- /routes
-- /mail.js
index.js:
const express = require('express')
var mail = require('./routes/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
任何想法?..
解决方案
您是否指定了要作为代理访问的服务器的地址?
// nuxt.config.js
proxy: {
'prefix': 'url'
}
推荐阅读
- airflow - 气流 - AWS_GLUE_OPERATOR 发生了什么?
- javascript - 如何提高 JS 中函数式代码的性能
- sql - SQL查询返回所有相同的数字,忽略数字是否为正
- node-red - Node-Red 功能节点按顺序排列
- java - 如何使用改造和 MVVM 查询带有用户输入的 api?
- ios - 具有动态最大高度的 CSS-Transform 在 Chrome for IOS 上不起作用(在 ReactJS 项目中)
- wpf - WPF 禁用 DatagridRow 和 ContextMenu
- node.js - 当工作人员发生未处理的拒绝时,worker.on('error')不起作用
- python - 用双斜杠从字符串到字节的编码问题
- version-control - 搁置或以其他方式保留 mercurial 的变化