rest – Angular2-对预检请求的响应未通过访问控制检查:请求的资源上没有“Access-Control-Allow-Origin”标头

前端之家收集整理的这篇文章主要介绍了rest – Angular2-对预检请求的响应未通过访问控制检查:请求的资源上没有“Access-Control-Allow-Origin”标头前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Angular 2中调用了一个http帖子.这在post man中工作得很好但是当我在Angular 2中实现这个API调用时,我得到No’Access-Control-Allow’错误.这是我的代码
  1. getInspections(): Observable<IInspection[]> {
  2. if (!this.inspections) {
  3. let body =JSON.stringify({"Statuses":["Submitted","Opened"]});
  4. let headers = new Headers({ 'Content-Type': 'application/json' });
  5.  
  6. headers.append('Access-Control-Allow-Origin','*');
  7. let options = new RequestOptions({ headers: headers });
  8.  
  9. return this.http.post(this._baseUrl + '/api/Inspect/ListI',body,options)
  10. .map((res: Response) => {
  11. this.inspections = res.json();
  12. return this.inspections;
  13. })
  14. .catch(this.handleError);
  15. }
  16. else {
  17. //return cached data
  18. return this.createObservable(this.inspections);
  19. }
  20. }

或者我可以这样做吗?只需传递标题而不是选项

  1. getInspections(): Observable<IInspection[]> {
  2. if (!this.inspections) {
  3. let body =JSON.stringify({"Statuses":["Submitted","Opened"]});
  4. let headers = new Headers({ 'Content-Type': 'application/json' });
  5.  
  6. //headers.append('Access-Control-Allow-Origin','*');
  7. // let options = new RequestOptions({ headers:headers });
  8.  
  9. return this.http.post(this._baseUrl + '/api/Inspect/ListI',headers)
  10. .map((res: Response) => {
  11. this.inspections = res.json();
  12. return this.inspections;
  13. })
  14. .catch(this.handleError);
  15. }
  16. else {
  17. //return cached data
  18. return this.createObservable(this.inspections);
  19. }
  20. }
CORS标题就像
  1. headers.append('Access-Control-Allow-Origin','*');

需要由服务器提供.在客户端添加它们毫无意义.

猜你在找的Angularjs相关文章