非简单请求不可重定向,包括第一个preflight请求和第二个真正的请求都不行. 简单请求可以重定向任意多次,但如需兼容多数浏览器,只可进行一次重定向. 中间服务器应当同样配置相关 CORS 响应头. 中间服务器设置 当跨域请求被重定向时,中间服务器返回的 CORS 相关的响应头应当与最终服务器保持一致. 任何一级的 CORS 失败都会导致 CORS 失败.这些头字段包括Access-Control-Allow-Origin, Access-Control-Allow-Credentials等.
背景: 本系统与门户系统单点登录时候,需要重定向到门户系统的登录页面,可是如果长时间没有操作的话,session会话失效,就需要跳转到登录页面. 所以在使用 response.sendRedirect("...")重定向URL后,在前段页面就会报 跨域问题Access to XMLHttpRequest'*'from origin '*' has been blocked by CORS..Access-Control-Allow-Origin ........等相关错误. 网上寻找了
TL;DR 非简单请求不可重定向,包括第一个preflight请求和第二个真正的请求都不行. 简单请求可以重定向任意多次,但如需兼容多数浏览器,只可进行一次重定向. 中间服务器应当同样配置相关 CORS 响应头. 中间服务器设置 当跨域请求被重定向时,中间服务器返回的 CORS 相关的响应头应当与最终服务器保持一致. 任何一级的 CORS 失败都会导致 CORS 失败.这些头字段包括Access-Control-Allow-Origin, Access-Control-Allow-Credent