質問

APIを使用して外部ウェブサイトから一部のデータのリクエストを開始しようとしています。

リクエストをコピーしてウェブブラウザに貼り付けると、正常に機能します。 (http://example.com/json/user/search/all)などの例 結果はブラウザウィンドウで確認できます。

しかし、このクエリをWebサイトから起動しようとすると、問題が発生します。 このようなJavaScriptを使用する: var req= new XMLHttpRequest(); req.open( 'GET'、上記のurl、true) req.send()

次のようなエラーが表示されます:オリジン(MyDOMAIN)はアクセス制御で許可されていません。

繰り返しになりますが、私はXMLHttpRequestsにかなり慣れていないので、これはかなり簡単に解決できると思います。 誰か知ってる?(私はグーグルを検索しようとしましたが、良い答えを見つけることができませんでした) よろしくお願いします。

役に立ちましたか?

解決

あなたは許可されていませんクロスサイトxmlhttprequests と使用する必要があります。それを達成するためのプロキシ。

Yahooのこの記事は詳細に説明し、その方法をより多くのアイデアに与えます。それを解決するために。しかし基本的にはセキュリティ上の目的のためにこの制限が存在するため、それは行われません。

例えばPHPとfopen()を使用した場合は、XMLHTTPRequestオブジェクトを使用してそのページを単に呼び出した場合に適しています。

他のヒント

問題は同一生成元ポリシーです。これは、元のページと同じドメインを除いて、XMLHTTPRequestsを 使用できないという規則です。これはセキュリティ上の理由によるものです。

これを回避する最も簡単な方法は、リクエストをプロキシするサーバー側スクリプトを作成することです。

これは、クロスサイドスクリプティングに対するブラウザの保護です。別のドメインからのページにアクセスすることは許可されていません。

編集:これも確認してください:クロスサイトXMLHttpRequest

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top