エラー: クロスオリジン要求がブロックされました:同じソースポリシーがリモートリソースの読み取りをhttp://safe-pay.co/safepay/public/api/userで許可しません。 (理由:CORSヘッダー「Access-Control-Allow-Origin」がありません)。エラーが発生しました:(クロスオリジン要求がブロックされました)イオン2
以下は私のコードです。どんな体でもこの問題を解決するのに役立ちます。
import { Injectable } from "@angular/core";
import { Http, Response ,Headers } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class UserService {
userUrl = "http://safe-pay.co/safepay/public/api/user";
constructor(public http: Http) {
}
getCategories() {
let jsonData = {"Data":{
"action": "CATEGORIES",
"lang": "AR"
},
"Request": {
}
}
var headers = new Headers();
headers.append('Content-Type', 'application/json');
return this.http.post(this.userUrl,jsonData,{
headers: headers }).map(res => res.json()).subscribe(data => {
console.log("data: ",data");
},
(err)=> console.log("error: ",err);
);
}
をテストするために、この拡張機能をインストール
..あなたは、あなたがこのリソースを要求することはできません –
背中側のCORSをeanbleしなければならないので、リモート側がこれを明示的に許可しなければならないため、クライアント側のJavaScriptを使用しています。 – CBroe