mọi người. Tôi mới vào Angular 2 và Spring Framework. Tôi đang thử một yêu cầu nhận đơn giản với tiêu đề ủy quyền (auth cơ bản).Phản hồi cho preflight có mã trạng thái HTTP không hợp lệ 401 - Spring
Tôi đang sử dụng Khởi động mùa xuân (1.2.6.RELEASE), cũng có thể có liên quan. Cấu hình CORS của tôi trông như thế này.
@Component
public class SimpleCorsFilter implements Filter {
private final Logger log = LoggerFactory.getLogger(SimpleCorsFilter.class);
public SimpleCorsFilter() {
log.info("SimpleCORSFilter init");
}
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, remember-me, authorization, x-auth-token");
chain.doFilter(req, res);
}
@Override
public void init(FilterConfig filterConfig) {
}
@Override
public void destroy() {
}
}
Và đây là những gì nó trông giống như từ phía khách hàng
this.headers.append('Authorization', 'Basic dXNlcjphZG1pbg==');
return this.http
.get(`http://localhost:8080/api/login?username=${username}`, {headers : this.headers})
.map(response => response.json().data as any);
}
tôi tiếp tục nhận được:
XMLHttpRequest không thể tải http://localhost:8080/api/login?username=user. Đáp ứng cho preflight có hợp lệ mã trạng thái HTTP 401
Hãy giúp đỡ, tôi không biết những gì tôi đang mất tích ... Tôi đã kiểm tra xung quanh rất nhiều bài viết đã được nhưng không thể đạt được điều đó ...
HTTP 401 có nghĩa là yêu cầu của bạn không thể thực hiện vì thiếu giấy phép, kiểm tra xem đang làm việc –
Bạn có thể xóa response.setHeader ("Access-Control-Allow-Credentials", "true") hay không; và thử? –
@TharsanSivakumar, có cùng suy nghĩ, cảm ơn anyway –