參考資料:http://www.cnblogs.com/chopper/archive/2012/03/24/2403945.html
測試依賴條件:
項目eetopinOfficial 在hosts綁定 www.eetopin.com域名
項目sns 在hosts綁定sns.com域名
測試代碼文件及源碼:
eetopinOfficial/testCookie.php
- <?php
- header('Content-type: application/json');
- //獲取回調函數名
- $callback = $_GET ['callback'];
- $value = $_GET['name'];
- //setcookie("name", "", time() - 3600);
- setcookie('name', $value, time()+3600*24*30, '/','.eetopin.com', $_SERVER['SERVER_PORT']==443?1:0);
- $json = "{\"name\":\"add cookie success $callback $value\"}";
- echo $callback . "(" . $json . ")";
eetopinOfficial/testJsonp.php
- <?php
- header('Content-type: application/json');
- //獲取回調函數名
- $callback = $_REQUEST ['callback'];
- if (isset($_COOKIE["name"])){
- $name = $_COOKIE["name"];
- }else{
- $name = "chopper";
- }
- //json數據
- $json = "{\"name\":\"$name\",\"sex\":\"man\"}";
- //echo $json;
- //echo $callback;
- //輸出:回調函數名(json數據)
- echo $callback . "(" . $json . ")";
- //echo $callback ."($json)";
sns/testCookie.php
- <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
- <script type="text/javascript">
- $.getJSON("http://www.eetopin.com/testCookie.php?name=lunzi30108&callback=?",function(data){
- alert(data.name);
- });
- </script>
sns/testJsonp.php
- <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
- <script type="text/javascript">
- $.getJSON("http://www.eetopin.com/testJsonp.php?callback=?",function(data){
- alert(data.name + " is a a" + data.sex);
- });
- </script>
測試步驟:
1、http://sns.com/testCookie.php
2、http://sns.com/testJsonp.php