[英]No 'Access-Control-Allow-Origin' header in Angular 6
I am getting Access-Control-Allow-Origin error. 我收到Access-Control-Allow-Origin错误。
Access to XMLHttpRequest at ' https://localhost:44301/api/XXXX/GetAllXXXX ' from origin ' https://localhost:44322 ' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
从CORS策略阻止从原点“ https:// localhost:44322 ”访问“ https:// localhost:44301 / api / XXXX / GetAllXXXX ”处的XMLHttpRequest:对预检请求的响应未通过访问控制检查:否“ Access-Control-Allow-Origin”标头存在于请求的资源上。
And below is my header which i have passing to api call. 下面是我传递给api调用的标头。
getAllItems<T>(): Observable<T> {
const options = { headers: this.getRequestHeaders() };
return this.http.get<T>(this.getAllItemUrl, options);
} }
protected getRequestHeaders(): HttpHeaders {
let headers = new HttpHeaders({
'Content-Type': 'application/json',
'Accept': `application/json, text/plain, */*`,
'App-Version': '1',
});
return headers;
} }
Am i missing anything to connect my API's here? 我在这里缺少连接我的API的东西吗?
You need to add CORS to your backend service. 您需要将CORS添加到您的后端服务。 If its an express based service you can have something like this
如果是基于快递的服务,您可以拥有类似这样的服务
const express = require('express');
const app = express();
var allowCrossDomain = function(req, res, next) {
res.header('Access-Control-Allow-Origin', "*");
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
}
app.use(allowCrossDomain);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.