date. 2013/3/22

category. JavaScript PHP

jQueryを使用してPHPでJONPのクロスドメインのAPIの作成方法です。

PHPでJSONPのAPIを返す

PHPで普通にJSONを返すだけではJavaScriptは受け取れませんので、少し変更します。

$json = array(
    "data1"=>"test1",
    "data2"=>"test2"
);
header('Content-Type: application/json');
echo $_GET['callback'] . "(" . json_encode($json). ")";

と、coalbackを受け付けるようにし、カッコで囲んであげます。

JavaScriptで受け取る

次はPHPの吐き出したJOSNPをJavaScriptで受け取ります。

$.ajax({
	type: "get",
	url: "http://api.example.com/?callback=112233",
	dataType: "jsonp",
	crossDomain: true,
	success:function(data){
		console.log(data);
	}
});

とし、JSONPを受け取ることが出来ます。

参考サイト

関連記事