0
我想在我的Payara服務器上使用Java EE應用程序的基本驗證登錄到我的rest API。但是當我嘗試提出請求時。我收到未經授權的CORS頭部錯誤。Angular2 rease CORS錯誤與Payara Basic驗證
提出請求的代碼。
var data = null;
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if (this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("GET", "http://localhost:8080/twitter/api/tweet/get?id=7");
xhr.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
xhr.setRequestHeader("cache-control", "no-cache");
xhr.setRequestHeader("postman-token", "d2883762-63dc-3158-ea76-21ff13182cee");
xhr.send(data);
我添加了這段代碼來應用正確的標題,但它們似乎不起作用。
@Provider
public class NewCrossOriginResourceSharingFilter implements ContainerResponseFilter {
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext response) {
response.getHeaders().putSingle("Access-Control-Allow-Origin", "*");
response.getHeaders().putSingle("Access-Control-Allow-Methods", "GET, HEAD, POST, PUT, DELETE, OPTIONS");
response.getHeaders().putSingle("Access-Control-Allow-Headers", "Content-Type");
}
}