首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我收到CORS错误-- cors()不工作

我收到CORS错误-- cors()不工作
EN

Stack Overflow用户
提问于 2020-11-03 02:46:35
回答 1查看 32关注 0票数 0

登录server.js后,如果成功,将显示React组件。我想从React组件接收用户信息。

服务器端使用端口5000,客户端使用端口3000。客户端组件按如下方式接收信息。

代码语言:javascript
复制
const Main = () => {

  async function makeGetRequest() {
    let res = await axios.get('http://localhost:5000/auth/google/callback');

    let data = res.data;
    console.log(data, 'data');
  }
  makeGetRequest();

  return (
    <div>
      <h2>Main Page</h2>
        Main Page
    </div>
  );
};

export default Main;

我知道express有cors,并尝试在server.js中使用它,但它不起作用。

我已经尝试使用单独的cors和cors选项,但它不起作用。

代码语言:javascript
复制
// server.js

const app = express();

const corsOptions = {
  origin: 'http://localhost:5000',
  credentials: true,
};

app.use(cors(corsOptions));

app.use((req, res, next) => {
  res.header('Access-Control-Allow-Origin', '*');
  res.header(
    'Access-Control-Allow-Headers',
    'Origin, X-Requested-With, Content-Type, Accept'
  );
  next();
});

app.use(
  session({
    secret: process.env.SECRET_CODE,
    resave: false,
    saveUninitialized: true,
    cookie: {
      maxAge: 60 * 60 * 1000,
    },
  })
);

app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());

app.use('/', indexRouter);
app.use('/auth', authRouter);
app.use('/main', mainRouter);

...

我得到了以下错误:

EN

回答 1

Stack Overflow用户

发布于 2020-11-03 02:52:16

cors origin应该使用端口3000,因为您希望允许来自该域的请求。

此外,您也不需要手动设置cors标头,cors()会为您处理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64651502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档