zoukankan      html  css  js  c++  java
  • axios跨域访问eggjs的坑egg-cors egg-passport passport-local session传递问题

    在同一机器上写前端和后端,前端使用webpack-dev-server启动,后端直接在eggjs项目目录下使用npm run dev启动,这种情况下,前端访问后端就是跨域访问。
    eggjs提供了一个跨域插件egg-cors,官方相关示例配置如下:
    // {app_root}/config/config.default.js
    exports.cors = {
    // {string|Function} origin: '*',
    // {string|Array} allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH'
    };
    要让axios自动发送服务器cookie,必须将axios设置添加上withCredentials:true,这时候,egg-cors配置中origin就不能配置为'*',否则会冲突,应该配置成前端地址(比如我的设置成http://localhost:9528),allowMethods根据需要配置,仅仅这样还不行!!!
    这里egg-cors的配置还:
    必须加上credentials:true!
    这个坑爬了很长时间,在此记录下,希望能帮助其他掉入此坑的朋友快速爬出来。

  • 相关阅读:
    MySQL数据库之索引
    python面向对象编程
    linux端口占用
    lintcode
    java基础
    lintcode
    linux 常用命令
    Docker & Kubernates
    angular preparation
    java 命令行
  • 原文地址:https://www.cnblogs.com/chengfeng6/p/10170042.html
Copyright © 2011-2022 走看看