【发布时间】:2017-05-21 23:22:37
【问题描述】:
我是 Angular2 的新手。我必须创建新的 Angular 应用程序并需要使用 Liferay 服务器的服务。
但是当我使用下面的代码调用服务时,它给出了 Cors 错误。
var headers = new Headers();
headers.append('Access-Control-Allow-Origin', '*');
headers.append("Content-Type", "application/x-www-form-urlencoded");
let params: URLSearchParams = new URLSearchParams();
this.http.get(localStorage.getItem('domainName')+'/service-name', {headers: headers})
.subscribe(response => {
// login successful if there's a jwt token in the response
console.log('Response'+response.json());
});
我的后端方法是 GET,我在 /webapps/Root/web.xml 文件中添加了 Cors 过滤器属性
但在浏览器控制台中它给出以下错误:
XMLHttpRequest 无法加载 http://localhost:9080/service-name。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'http://localhost:4200' 不允许访问。响应的 HTTP 状态代码为 401。
【问题讨论】:
-
您的服务器是否也允许 CORS 请求? stackoverflow.com/questions/12383109/…
标签: java angular cors liferay-6