2014年11月25日火曜日

クロスドメインのサイトに、AjaxでPOST

クロスドメインのサイトに、AjaxでPOSTです。コツは、受け取り側のサーバーレスポンスヘッダーに「Access-Control-Allow-Origin」を追加すれば良いらしいです。

サーバーサイドのPHPヘッダーを追加
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST');
クライアントサイドのJavaScript
jQuery.ajax({
  type: 'POST',
  url: 'http://yoursite/post',
  data: {
    "name" : "apple",
    "age" : 20
  },
  dataType: 'json',
  success: function(json){
    alert('送信されました。');
  },
  error: function(XMLHttpRequest, textStatus, errorThrown) {
    alert('送信できませんでした。');
  }
});

参考サイト
続クロスドメインで使うXMLHttpRequestとCORSの話(日頃の行いさん)
How do I send a cross-domain POST request via JavaScript?(Stack Overflow)
How to Send Cross Domain AJAX Request with jQuery(HayaGeekさん)

0 件のコメント:

コメントを投稿