我在浏览器控制台上看到了以下错误信息:
XMLHttpRequest无法加载http://localhost:8080/api/login。请求的资源中没有“Access-Control-Allow-Origin”标头。因此,源“http://localhost:9009”不允许访问。
我使用的环境是:
- 后端:Spring Boot - 前端:Angularjs - Web服务器:Grunt
在服务器上,我已经在请求和响应中定义了标头:
XMLHttpRequest无法加载http://localhost:8080/api/login。请求的资源中没有“Access-Control-Allow-Origin”标头。因此,源“http://localhost:9009”不允许访问。
我使用的环境是:
- 后端:Spring Boot - 前端:Angularjs - Web服务器:Grunt
在服务器上,我已经在请求和响应中定义了标头:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) request;
HttpServletResponse httpResponse = (HttpServletResponse) response;
httpResponse.setHeader("Access-Control-Allow-Origin", "*");
httpResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE,PUT");
httpResponse.setHeader("Access-Control-Max-Age", "3600");
httpResponse.setHeader("Access-Control-Allow-Headers", "x-requested-with,Authorization, Content-Type");
if (httpRequest.getMethod().equals("OPTIONS")) {
httpResponse.setStatus(HttpServletResponse.SC_ACCEPTED);
return;
}
}
我已经在这个链接No 'Access-Control-Allow-Origin' header is present on the requested resource上找到了这个问题,但是没有找到合适的解决方案。
以下是浏览器网络图像: