2017-10-17 4 views
0

私はこのページの番目のオプションへの要求を作っています:私が欲しいの応答を取り戻すhttp://www.groupkt.com/post/5c85b92f/restful-webservice-to-get-and-search-states-and-territories-of-a-country.htm200の応答を得るだ​​けでなく、CORSエラー?

イム、私はまた、私には意味がありませんCORSのエラーを取得...彼らは、CORSを有効にしていると述べました

results.component.ts:28の 結果、状態= 1 http://services.groupkt.com/state/search/USA?text=のロードに失敗しました:いいえ「アクセス制御 - 許可原点」ヘッダは、要求されたリソース上に存在します。

let headers = new Headers(); 
     headers.append('Content-Type', 'text/plain'); 
     let options = new RequestOptions({ headers: headers }); 
     return this.http.get('http://services.groupkt.com/state/search/USA?text=cal', options) 
     .map(this.extractData)  
     .catch(this.handleError); 

私はこの問題を回避することができた唯一の方法は、CORSを修正するChromeの拡張機能をダウンロードすることです。しかし、これは私が手渡す必要があるプロジェクトなので、誰かに拡張機能をダウンロードするように伝えるのは間違いないでしょう...

はい私はブラウザのキャッシュをクリアしました。

+0

クライアント側からそのリソース(services.groupkt.com)にアクセスするプロジェクトの一部ですか?あなたのプロジェクトが実際にあなた自身のサーバーを通してそのリソースをプロキシすることを含んでいた場合、あなたはまだもっと多くの作業が必要です。また、あなたは** CORSを固定していません。あなたはそれを回避しています。 CORSは、ユーザーを保護するためのセキュリティポリシーです。 – zero298

+0

'headers.append( 'Content-Type'、 'text/plain');'これは意味をなさない。あなたはGETリクエストをしています。要求の本文にコンテンツタイプを記述するコンテンツはありません。 – Quentin

+0

すべてはサーバーによって異なります。可能な複製のhttps://stackoverflow.com/questions/35553500/xmlhttprequest-cannot-load-https-www-website-com – JustinJmnz

答えて

1

イムは、私が欲しいの応答を取り戻す、私はまた、私には意味がありませんCORSのエラーを取得する

エラーは、サーバーが明示的に許可を付与するものではありませんクライアントによって生成され

CORS起点を越えた​​応答を読むためのJavaScript。

これは、リクエストが良好な応答を生成したかどうか(つまり、200 OKか他のものかどうか)に完全に依存しません。

は、彼らがCORSが

を有効にしていると述べた次のいずれかの

  • 彼らが間違っているまたは
  • 彼らはCORSがだけあなたが行われた要求によって満たされない条件の下で有効になっている (例えば、別のURLの場合)
+0

うーん。そのURLの作業をリクエストするために私が最後に何もできないようなものだと思われます。 – Drewson

関連する問題