Javascript ×;未处理的拒绝(错误):引发了跨源错误。反应不';无法访问开发中的实际错误对象

Javascript ×;未处理的拒绝(错误):引发了跨源错误。反应不';无法访问开发中的实际错误对象,javascript,json,reactjs,react-hooks,Javascript,Json,Reactjs,React Hooks,我正在使用上下文挂钩和reducer分派在React中创建一个注销链接。我登录后出现错误 我在后端使用node、express和mongoose 这里是Logout.js: import React,{useState,useContext}来自“React”; 从“react router dom”导入{useHistory,Redirect,Link} 从“../../Context/AuthContext”导入{AuthContext}; 从“axios”导入axios 常量注销=()=

我正在使用上下文挂钩和reducer分派在React中创建一个注销链接。我登录后出现错误

我在后端使用node、express和mongoose

这里是Logout.js:

import React,{useState,useContext}来自“React”;
从“react router dom”导入{useHistory,Redirect,Link}
从“../../Context/AuthContext”导入{AuthContext};
从“axios”导入axios
常量注销=()=>{
const{authLog,dispatch}=useContext(AuthContext)
axios.get()http://localhost:2000/apiEndpoint/CREATE/user/logout“,{withCredentials:true})。然后((res)=>{
如果(res.data==='Logout Success'){
分派({type:'LOGOUT'});
}
}).catch((错误)=>{
console.log(错误)
})
返回(
您已注销!!!!
{}
)
}

导出默认注销
当通过端口或主机(而非自身)访问服务器时,会发生跨源错误(React而非localhost或)

要快速修复此问题,请将其添加到React package.json中:

"proxy": "http://localhost:2000"
现在,您可以使用“/”而不是“来访问服务器文件”http://localhost:2000“因为React正在使用代理而不是外部链接

现在,Logout.js第7行中的代码应该是:

axios.get('/apiEndpoint/CREATE/user/logout',{withCredentials:true}).then((res)=>{
只要记住在开发时将代理更改为您的基础网站名称,例如()

编辑:为方便起见,Logout.js完整代码可以替换为:

import React ,{useState, useContext}from 'react';
import {useHistory,Redirect, Link} from 'react-router-dom'
import { AuthContext } from '../../contexts/AuthContext';
import axios from 'axios'

const Logout =()=>{
    const {authLog,dispatch} = useContext(AuthContext)
 axios.get('/apiEndpoint/CREATE/user/logout',{withCredentials:true}).then((res)=>{
     
      if(res.data==='Logout Success'){
        dispatch({type: 'LOGOUT'});
        
      }
  }).catch((err)=>{
      console.log(err)
  })
    

    return(
        <div >
            <h1>You are logged out!!!!</h1>
            {<Redirect to='/' />}
        </div>
        
    )
}


export default Logout
重要提示--在生产中使用cors时,请确保传入如下对象{origin:YOUR_REACT_LOCALHOST_URI}。
您可以在cors npm文档中阅读此内容。

感谢您的回复,但遗憾的是,这没有起作用。我得到了完全相同的错误。只是更新了一个替代解决方案。注意底部的纸条我试过了。我已经把cors中的origin设置为true。谢谢
var express = require('express')
var cors = require('cors')
var app = express()

app.use(cors())