我正在尝试从我的Angular应用程序连接到基于Spring Boot和Spring Cloud构建的后端微服务。 UI通过Zuul调用微服务层,Zuul路由到相应的微服务
从浏览器控制台中的角度UI连接到微服务时,我收到以下错误:
无法加载:https://microservice url - 请求标头字段Access-Control-Allow-Origin在预检响应中不允许使用Access-Control-Allow-Origin。
有人可以解释这个错误所指的是什么吗?
我有同样的问题我实现了接口过滤器
然后允许Access-Control-Allow-Headers和Access-Control-Expose-Headers添加CORS问题
@Component
public class CORSFilter implements Filter{
@Override
public void doFilter(ServletRequest request, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");
response.setHeader("Access-Control-Expose-Headers", "Content-Type, Access-Control-Expose-Headers, Authorization, X-Requested-With");
chain.doFilter(request, response);
logger.info(request.getRemoteAddr());
}
}