美文网首页
跨域时session丢失问题的解决

跨域时session丢失问题的解决

作者: 无崖老师 | 来源:发表于2020-09-04 00:22 被阅读0次

    项目需求需要前后端分离,做一个登录验证码,但尴尬的是node中,因为跨域不能携带sessionId的原因,导致session丢失,node不能获取验证码,没法做验证

    经过将近半个小时的折腾最终解决,特此保留

    我的后端使用的是node的express框架,在app.js中进行如下设置

    ```

    app.all('*', function (req, res, next) {

      res.header('Access-Control-Allow-Origin', 'http://127.0.0.1:5500'); //必须写上自己的域名,不能为*

      res.header('Access-Control-Allow-Headers', 'Content-Type, X-Requested-With');

      res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');

      res.header('Access-Control-Allow-Credentials', 'true');//允许携带cookie

      if (req.method == 'OPTIONS') {

        res.send(200);

      }

      else {

        next();

      }

    });

    ```

    前端使用的是axios中进行了,如下的设置

    ```

    axios.defaults.withCredentials = true;//设置允许携带cookie,默认不让携带

    ```

    相关文章

      网友评论

          本文标题:跨域时session丢失问题的解决

          本文链接:https://www.haomeiwen.com/subject/tmpasktx.html