fetch meet 302 redirect


公司用的统一登录,当session过期后,fetch发起的请求会返回302,然后fetch会跟随302 redirect的url继续请求
但之后的地址是一个普通http页面地址,应该直接访问而不是ajax访问。而且redirect之后的页面也没有设置access-allow-origin的跨域请求头。
在自己封装的fetch函数中竟然不能获取返回状态码是302的请求的response信息。

查到了可用的方案,在fetch的参数中添加 redirect: ‘manual’,之后fetch若是返回302,会进入then环节,但仍然不能获取到302的redirect地址,而且response.status 是0而不是302,只能靠type === ‘opaqueredirect’来判断。

关于 admin

所有重要的进步,都来源于失败和挫折的经历
此条目发表在 ecmascript 分类目录。将固定链接加入收藏夹。