簡體   English   中英

Angular 6中沒有'Access-Control-Allow-Origin'標頭

[英]No 'Access-Control-Allow-Origin' header in Angular 6

我收到Access-Control-Allow-Origin錯誤。

從CORS策略阻止從原點“ https:// localhost:44322 ”訪問“ https:// localhost:44301 / api / XXXX / GetAllXXXX ”處的XMLHttpRequest:對預檢請求的響應未通過訪問控制檢查:否“ Access-Control-Allow-Origin”標頭存在於請求的資源上。

在此處輸入圖片說明

下面是我傳遞給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;

}

我在這里缺少連接我的API的東西嗎?

您需要將CORS添加到您的后端服務。 如果是基於快遞的服務,您可以擁有類似這樣的服務

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM