Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么';t CORS在一个简单的Express应用程序中工作_Express_Cors_Es6 Modules - Fatal编程技术网

为什么';t CORS在一个简单的Express应用程序中工作

为什么';t CORS在一个简单的Express应用程序中工作,express,cors,es6-modules,Express,Cors,Es6 Modules,我无法在我的示例React/Express应用程序中消除此浏览器错误: 在'http://localhost:9000/getFiles“起源”http://localhost:3000'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origin'标头。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源 其中/getFiles从React调用Express 我用谷歌搜索了很多次,我想我已经把所有的东西都编对了 App

我无法在我的示例React/Express应用程序中消除此浏览器错误:

在'http://localhost:9000/getFiles“起源”http://localhost:3000'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origin'标头。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源

其中/getFiles从React调用Express

我用谷歌搜索了很多次,我想我已经把所有的东西都编对了

App.js

import express from 'express'; 
import routes  from './routes/index.js'
import cors from "cors";

const app = express(); 
app.use(cors());
app.use("/", routes);

const PORT = 9000; 
  
app.listen(PORT,() => { 
    console.log(`Running on PORT ${PORT}`); 
}) 

我曾怀疑它与ES6格式有关,但我见过其他代码示例完全按照原样使用该导入语句。

我找到了答案。问题是因为我在设置路由后错误地添加了cors()引用。在颠倒顺序并重新启动我的应用程序后,它开始工作

正确的顺序:

...
app.use("/", routes);
app.use(cors());
...

这篇文章的道具让我走上了正确的轨道。

我投票结束这个问题,因为这是一个答案,而不是一个问题。相反,我应该被改写为一个问题,然后“发布你的答案”表单/按钮可以用于将这些现有信息作为单独的答案发布。大约一天后,你可以接受自己的答案;这将在UI中显示已回答的问题,如果人们搜索同一个问题,将显示该答案。@sideshowbarker,我已将帖子更改为一个问题,但未重新打开。我应该创建一个新的帖子吗。谢谢,干杯。@DouglasBurrill现在看来邮局已经重新开放了