博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React 解决fetch跨域请求时session失效
阅读量:7119 次
发布时间:2019-06-28

本文共 829 字,大约阅读时间需要 2 分钟。

在解决fetch跨域请求接口的时候,一般都是让后台接口在返回头里添加

//允许所有域名的脚本访问该资源header("Access-Control-Allow-Origin: *");

image.png

确实这样是可以解决跨域请求的问题,但是如果我们要在请求的时候添加session,那么这样设置就会出现问题了。

fetch添加Cookie验证的方法是设置credentials: 'include'

fetch(url, {        method: 'POST',        body: JSON.stringify(params),        mode: 'cors',        //请求时添加Cookie        credentials: 'include',        headers: new Headers({            'Accept': 'application/json',            "Content-Type": "application/x-www-form-urlencoded; charset=utf-8",        })    })

设置好了之后,信心满满的发起请求。却发现网络请求报错了

A wildcard '*' cannot be used in the 'Access-Control-Allow-Origin' header when the credentials flag is true. Origin 'http://localhost:3000' is therefore not allowed access

原因是网络请求需要携带Cookie时Access-Control-Allow-Origin是不能设置为*的,这个时候应该要给Access-Control-Allow-Origin指定域名

image.png

这样就可以达到跨域请求的同时传递Cookie的目的了

  • 列表项目

转载地址:http://zubel.baihongyu.com/

你可能感兴趣的文章
★漫画:优秀的程序员具备哪些属性?
查看>>
CentOS7修改主机名+免密码
查看>>
常用常忘
查看>>
ubuntu14.04 python Tkinter
查看>>
OpenCV3.2交叉编译
查看>>
手把手教你把一篇pdf英文文献瞬间翻译成doc格式的中文
查看>>
Javascript保留小数点后指定位数
查看>>
OS X 10.9 Mavericks下如何安装Command Line Tools(命令行工具)
查看>>
Mac安装MongoDB
查看>>
JDBC操作mysql编写及遇到的问题
查看>>
JDBC链接数据库
查看>>
还没理解,有待补充---易变域上的同步
查看>>
解決BufferedReader BufferedWrite 读写UTF-8文件中文乱码
查看>>
Java普通工程转web工程
查看>>
mongodb 修复
查看>>
XML文件的三种解析方式综合举例
查看>>
《环太平洋》视觉特效分解
查看>>
开启两个vsftpd
查看>>
android内存泄漏的集中情况
查看>>
Android模拟器加速
查看>>