Javascript `正在卸载该页`错误

Javascript `正在卸载该页`错误,javascript,node.js,reactjs,routing,Javascript,Node.js,Reactjs,Routing,我正在使用一个NodeJS ReactJS同构应用程序,当我点击一个链接时,我得到一个错误,说 未捕获(承诺中)错误:请求已终止 可能原因:网络脱机、访问控制不允许源站允许源站、页面正在卸载等。 我听说的前两个原因(离线和CORS)。正在卸载页面的错误是什么意思?可能导致浏览器无法导航的原因 您的错误是 Uncaught (in promise) Error: Request has been terminated 当承诺中的请求在解决或拒绝之前终止时,会导致此错误。如果(可能的原因) 网络处

我正在使用一个NodeJS ReactJS同构应用程序,当我点击一个
链接时,我得到一个错误,说

未捕获(承诺中)错误:请求已终止
可能原因:网络脱机、访问控制不允许源站允许源站、页面正在卸载等。

我听说的前两个原因(离线和CORS)。正在卸载页面的
错误是什么意思?可能导致浏览器无法导航的原因

您的错误是

Uncaught (in promise) Error: Request has been terminated
当承诺中的请求在解决或拒绝之前终止时,会导致此错误。如果(
可能的原因

  • 网络处于脱机状态
    :出现网络故障,与正在处理请求的url的连接丢失
  • 访问控制允许原点不允许原点
    :由于缺少正确的CORS标头,请求被拒绝
  • 页面正在卸载
    :发出请求的页面在请求完成之前关闭
  • 在上述原因中,与您的案例相关的最有可能的原因是1或2,因为您在单击
    链接导航到组件时会出现错误。请使用
    链接检查正在加载的新组件发出的请求

    编辑:
    如果您查看错误消息屏幕截图,它清楚地表明错误发生在PromiseRequest的app.js第73194行,位于node_modules/superagent/lib/client.js.Request.crossDomainError中。因此,您出现错误的原因是上面第2条中描述的CORS错误。

    原因
    链接
    组件正在使用
    Location.push
    进行重定向,而
    Location.push
    方法无法重定向到另一个域

    因此,我的解决方案是:

  • 使用
    窗口。打开('http://your.new.domain.com/index“,”自我“
  • 使用

  • 似乎您尚未在节点服务器中启用cors。 建议的步骤:

    • npm安装cors

    • 在app.js(节点服务器)中使用它


    您的链接是否指向外部域?如果是这样,那么最好使用
    a
    标记。我在
    Link
    组件中使用
    a
    标记。你为什么要这样做!一次使用任何一个,我不明白。这是一种反应成分。这就是组件的工作原理。。!谢谢我的问题是第三个错误/原因是什么?什么是
    正在卸载的页面
    错误意味着什么?请求在请求完成之前关闭。并不意味着页面被卸载。我说的对吗?如果在请求完成之前关闭了发出请求的页面,那么您将得到这个错误。当页面关闭时,它会触发一个
    beforeunload
    和一个
    unload
    事件,让服务知道请求可以终止。哦..Thannks。但在我的例子中,我第二次尝试导航时,还是成功了。科尔斯没事。我现在在我的项目中看不到这个错误。
    var cors = require('cors');    
    var app = express();
    app.use(cors()); //Enable CORS