Quiero hacer una llamada posterior a un servidor expreso local que se ejecuta en el puerto 8001 con axios en mi código de reacción como se muestra a continuación:
axios.post('http://localhost:8001/enterInfo',{headers: { 'crossDomain': true }}, payload) .then((response) => { this.setState({ saved:true }) })Mi servidor Express está escuchando en el puerto 8001 y he escrito un método de publicación en mi servidor Express:
app.post('/postUrl', (req, res) => { console.log(req.body); res.send('111'); });pero cuando hago la llamada desde la interfaz de usuario de reacción, aparece este error:
XMLHttpRequest no puede cargar http://localhost:8001/enterInfo . La respuesta a la solicitud de verificación previa no pasa la verificación de control de acceso: no hay ningún encabezado 'Access-Control-Allow-Origin' en el recurso solicitado. Por lo tanto, no se permite el acceso al origen ' http://localhost:8080 '.
Debe habilitar el uso compartido de recursos de origen cruzado en su servidor.
Revisa este paquete :
var express = require('express') var cors = require('cors') var app = express() app.use(cors()) app.post('/postUrl', (req, res) => { console.log(req.body); res.send('111'); });