2016-10-18 7 views
0

私はシンプルなポスト機能を持っている(下記参照)Ajaxのポスト機能

$("#abi_test").click(function (event) { 
    $.post(
     "get.php", 
     { 
      name: "Tom", 
      age: "30", 
      email: "[email protected]", 
      uniID: "3" 
     }, 
     function (data) { 
      $('#stage').html(data); 
     } 
    ); 
}); 

どのように私はhttps://www.site.co.uk/some/get.phpに投稿するために、これを変更することができますか?

私は

$("#abi_test").click(function (event) { 
     $.post(
      "https://www.site.co.uk/some/get.php", 
      { 
       name: "Tom", 
       age: "30", 
       email: "[email protected]", 
       uniID: "3" 
      }, 
      function (data) { 
       $('#stage').html(data); 
      } 
     ); 
    }); 

を試してみました。しかし、私は https://www.site.co.uk/some/get.phpをロードできないエラーに

のXMLHttpRequestを取得しています

動作しませんでした。いいえ 要求された リソースに 'Access-Control-Allow-Origin'ヘッダーが存在します。 Origin 'http://website.org.uk'は、アクセスが許可されていないため、 です。

答えて

0

これはできません。これはクロスサイトスクリプティングと呼ばれ、ほとんどすべてのサーバーで許可されていません。その周りの唯一の方法は、外部URLからのリクエストを許可するヘッダーで応答できるサーバーを制御する場合です。

サーバーを制御する場合は、単にこれをget.phpファイルに追加します。あなたは明示的にそれが来ているURLを指定することをお勧めします。さもなければ、あなたのサーバーはどんなドメインからのPOSTに対しても脆弱です。

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

ありがとうございます、どうすればいいですか? –

+0

サーバーを制御していますか? – TheValyreanGroup

+0

これは、<?php header( 'Access-Control-Allow-Origin:*')で解決しました。 ?>あなたがあなたの答えを編集する場合は、この回答を受け入れるように編集してください。 –