我需要访问我的api以发送联系人电子邮件,但是每次尝试通过前端发送时,都会收到CORS错误。如果我使用Postman,问题就会消失,而且我无法弄清为什么会发生
我使用的是我在研究中发现的几个标题,但似乎没有一个标题可以解决问题。
这是我的请求前端:
const baseUrl = 'https://mywebsiteaddr.com:port/contact'
export default class ContactUs extends Component {
send = () => {
const message = this.state.message
const url = baseUrl
console.log(message)
axios.post(url, message)
.then(this.reset())
.then(alert('Mensagem enviada'))
}
}
这是我的index.js(API)
const express = require('express')
const app = express()
const consign = require('consign')
const AllowCors = require('./config/cors')
const bodyParser = require('body-parser')
const cors = require('cors')
const port = 21007
app.use(bodyParser.urlencoded({extended: true}))
app.use(bodyParser.json())
app.use(AllowCors)
app.use(cors())
consign()
//.then('./config/middlewares.js')
.then('./api')
.then('./config/routes.js')
.into(app)
app.listen(port, () => {
console.log(port)
})
AllowCors:
module.exports = (req, res, next) =>{
res.header('Access-Control-Allow-Origin', '*')
res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS')
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept')
res.header('Access-Control-Request-Method: GET, POST, OPTIONS, PUT, DELETE')
next()
}
应该足以发送联系人电子邮件,对吗?如果有人可以帮助我,我将非常感激!