Im自分のマゼンタの残りのAPIを使用してHTTP GETリクエストを取得しようとしています。角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
Googleで回避策を講じた後、以下の手順を試してみましたが、失敗しました。 Magentoのの.htaccessファイルで
1)は、上記角度2のコードで)
ヘッダが "*"
2アクセス制御 - 許可原点を設定して加え、
を添加headers.append( 'Access-Control-Allow-Headers'、 'Content-Type'); {: 'アプリケーション/ JSON' '受け入れる'} ...
...
3)は
LETヘッダー=新しいヘッダ(アプリケーション/ JSONからのコンテンツタイプを変更しようとしました);
何が不足していますか?
CORS(magento2からangular2)の問題を解決するには、適切な解決策が必要です。
歓迎! (私はショッピングプラットフォームであることを理解)Magentoのグローバルクロスオリジンのアクセスを与える
これはAngularの問題ではないと言えるでしょう。つまり、フロントサイドにヘッダーを設定していないということです。これはサーバー側の問題です。 – Alex