我是新來的angular2,並公平我有很少的知識,我嘗試修復,但我遇到了一些關於跨站點請求的問題,試圖從另一個應用程序訪問服務,但我有這樣的問題,無論我嘗試做Angular2 CORS問題
XMLHttpRequest cannot load https://hr/Team/EditEmployeeInfo.aspx. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:54396' is therefore not allowed access. The response had HTTP status code 401.
這是我angular2服務,我已經試過這樣的事情
getUserHrtbProfile(userId): Promise<any> {
const headers = new Headers();
headers.append('Access-Control-Allow-Headers', 'Content-Type');
headers.append('Access-Control-Allow-Methods', 'GET, PUT, POST, DELET');
headers.append('Access-Control-Allow-Origin', '*');
var apiUri: string = "https://hrtb/Team/EditEmployeeInfo.aspx?emplid={0}&Menu=InfoEmployee&T=0".replace("{0}", userId);
return this.http.get(apiUri, headers).map(result => result.json()).toPromise();
}
,這是我的組件
this.bannerService.getUserHrtbProfile(this.userId).then(hrtbJson => {
this.hasHrtbAccess = hrtbJson.HasHrtbAccess;
this.hrtbProfileUrl = hrtbJson.HrtbProfileUrl;
}).catch(err => {
this.hasHrtbAccess = false;
});
我已經在我的問題上搜索解決方案,但仍找不到適合我需求的解決方案。
Angular 2 http request with Access-Control-Allow-Origin set to *
但最重要的,這是一個angular2問題,我需要解決?或者事實上,正如我讀過的,它應該由暴露API的團隊處理?
謝謝大家。
是的,我知道,它的工作原理,但不是因爲它應該的,這意味着我不知道其他球隊如何做該服務但內容不正確。想象一下,一些用戶可以查看其他用戶配置文件的層次結構,如果我不能,我應該收到200,因爲即使我沒有授權請求是成功的,但內容應該是不同的,在我的情況下,這不是問題我無論我是否有權訪問某些配置文件,都將獲得200和始終相同的內容。 – Remus