Im嘗試使用我的magento的Rest api獲取HTTP GET請求。Angular 2:如何處理預檢的響應具有無效的HTTP狀態代碼400.錯誤的請求
下面是實現相同的angular2代碼!
public ngOnInit() {
let headers = new Headers({ 'Accept': 'application/json' });
headers.append('Authorization', 'Bearer x9a278mu7xoh4k0jkj08doc5j4b3ac22');
headers.append('Access-Control-Allow-Headers', 'Content-Type');
headers.append('Access-Control-Allow-Methods', 'GET');
headers.append('Access-Control-Allow-Origin', '*');
let options = new RequestOptions({ headers: headers });
return this.http.get('http://10.2.../Mage_ang2/index.php/rest/V1/customers/1',options)
.map(response => console.log(response.json))
.subscribe((items: Person[]) => {
console.log('items: ' + items);
this.people = items;
}, error => console.log(error));
}
我得到(哪一個即時假設)的CORS問題。
OPTIONS http://10.2.../Mage_ang2/index.php/rest/V1/customers/1
的XMLHttpRequest不能加載http://10.2.../Mage_ang2/index.php/rest/V1/customers/1。預檢的響應具有無效的HTTP狀態代碼500
我在谷歌的解決方法之後嘗試了下面的步驟來修復相同的問題,但不成功。
1)在Magento .htaccess文件,加入
報頭中設置訪問控制允許來源 「*」
2)在上述的角2的代碼添加,
headers.append('Access-Control-Allow-Headers','Content-Type'); ...
...
3)試圖改變內容類型從應用/ JSON在
讓頭=新集管({ '接受': '應用/ JSON'} );
我在想什麼。
需要適當的解決方案來修復CORS(從magento2到angular2)問題。
建議歡迎!
我可以這麼說,這不是一個Angular問題,也就是說,你不要在正面設置標題。這是一個服務器端問題。 – Alex