1. ホーム
  2. ジャバスクリプト

[解決済み】Access-Control-Allow-Originを回避する方法は?

2022-04-05 15:37:06

質問

私は、彼らがこれらのajaxコールを防ぐように設定されたプラットフォーム上で自分のサーバーへのajaxコールを行っています(しかし、私はそれが私のサーバーからデータを取得し、私のサーバーのデータベースから取得したデータを表示する必要があります)。 私のajaxスクリプトは動作しており、私のサーバーのPHPスクリプトにデータを送り、処理することができます。 しかし、処理されたデータを取り戻すことはできません。 "Access-Control-Allow-Origin"

私はそのプラットフォームのソースやコアにアクセスできないので、そのスクリプトを削除することができません。 (P/S Google Chromeのコンソールを使って、このエラーを発見しました)

Ajaxのコードは以下の通りです。

 $.ajax({
     type: "GET",
     url: "http://example.com/retrieve.php",
     data: "id=" + id + "&url=" + url,
     dataType: 'json',   
     cache: false,
     success: function(data)
      {
        var friend = data[1];              
        var blog = data[2];           
        $('#user').html("<b>Friends: </b>"+friend+"<b><br> Blogs: </b>"+blog);

      } 
  });

または JSON 上記のajaxスクリプトと同等のコードですか? 私が思うに JSON が許可されています。

どなたかご教授いただければと思います。

どのように解決するのですか?

これをretrieve.phpの上に置いてください。

header('Access-Control-Allow-Origin: *');

この場合、CORS保護が事実上無効となり、ユーザーが攻撃にさらされることになることに注意してください。を許可する必要があることを完全に確信していない場合は、この方法を使用してください。 すべて のオリジンでは、より特定のオリジンにロックする必要があります。

header('Access-Control-Allow-Origin: https://www.example.com');

については、以下のスタックアンサーを参照してください。 Access-Control-Allow-Origin

https://stackoverflow.com/a/10636765/413670