<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[刘新修]]></title> 
<link>http://liuxinxiu.com:80/index.php</link> 
<description><![CDATA[刘新修的个人博客 (Liuxinxiu'S Blog)]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[刘新修]]></copyright>
<item>
<link>http://liuxinxiu.com:80/CORS_PHP/</link>
<title><![CDATA[CORS跨域资源共享PHP版本实现]]></title> 
<author>刘新修 &lt;admin@yourname.com&gt;</author>
<category><![CDATA[PHP/Java/Go]]></category>
<pubDate>Mon, 12 Sep 2016 04:15:12 +0000</pubDate> 
<guid>http://liuxinxiu.com:80/CORS_PHP/</guid> 
<description>
<![CDATA[ 
	<p>使用PHP实现CORS 跨域资源共享，可传参origin通过限制，代码如下：</p><div class="codeText"><div class="codeHead">PHP代码</div><ol start="1" class="dp-c"><li class="alt"><span><span>&lt;?php&nbsp;&nbsp;</span></span></li><li><span><span class="comment">/******** 定义Response返回header头格式及编码 ********/</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>header(<span class="string">'Content-type: application/json; charset=utf-8'</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span><span class="comment">/******** 回调参数设置 ********/</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="vars">$param</span><span>=</span><span class="string">&quot;origin&quot;</span><span>;&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="vars">$origin_URL</span><span>=</span><span class="vars">$_REQUEST</span><span>[</span><span class="vars">$param</span><span>];&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span><span class="comment">/********　json_encode 转成=&gt; encode_json *******/</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="keyword">function</span><span> encode_json(</span><span class="vars">$str</span><span>)&#123;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span> urldecode(json_encode(url_encode(</span><span class="vars">$str</span><span>)));&nbsp;&nbsp;</span></span></li><li class="alt"><span>&#125;&nbsp;&nbsp;</span></li><li><span><span class="keyword">function</span><span> url_encode(</span><span class="vars">$str</span><span>)&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">if</span><span>(</span><span class="func">is_array</span><span>(</span><span class="vars">$str</span><span>))&#123;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">foreach</span><span>(</span><span class="vars">$str</span><span> </span><span class="keyword">as</span><span> </span><span class="vars">$key</span><span>=&gt;</span><span class="vars">$value</span><span>)&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="vars">$str</span><span>[urlencode(</span><span class="vars">$key</span><span>)]=url_encode(</span><span class="vars">$value</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<span class="keyword">else</span><span>&#123;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="vars">$str</span><span>=urlencode(</span><span class="vars">$str</span><span>);&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span> </span><span class="vars">$str</span><span>;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span><span class="comment">/**************** &#92;/&#92;/反转义范例 ********************/</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="keyword">function</span><span> stripslashes_deep(</span><span class="vars">$value</span><span>)&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="vars">$value</span><span>=</span><span class="func">is_array</span><span>(</span><span class="vars">$value</span><span>)?&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="func">array_map</span><span>(</span><span class="string">'stripslashes_deep'</span><span>,</span><span class="vars">$value</span><span>):&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="func">stripslashes</span><span>(</span><span class="vars">$value</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">return</span><span> </span><span class="vars">$value</span><span>;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span><span class="comment">/******************** Example ******************************/</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="vars">$array</span><span>=</span><span class="keyword">array</span><span>(</span><span class="string">&quot;f&#92;&#92;'oo&quot;</span><span>, </span><span class="string">&quot;b&#92;&#92;'ar&quot;</span><span>, </span><span class="keyword">array</span><span>(</span><span class="string">&quot;fo&#92;&#92;'o&quot;</span><span>, </span><span class="string">&quot;b&#92;&#92;'ar&quot;</span><span>));&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="vars">$array</span><span>=stripslashes_deep(</span><span class="vars">$array</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span><span class="comment">/******************** Output *******************************/</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span><span class="comment">//echo encode_json(array('china'=&gt;'钓鱼岛是中国的!','Japan'=&gt;array('name'=&gt;'日本狗!')));</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span><span class="comment">/************ 定义Post过来什么数据就返回什么数据 ***********/</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="vars">$res</span><span>=</span><span class="keyword">array</span><span>(&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;'status<span class="string">'=&gt;-1,</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;'</span><span>name</span><span class="string">'=&gt;isset($_POST['</span><span>name</span><span class="string">'])?$_POST['</span><span>name</span><span class="string">']:'</span><span class="string">',</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;'</span><span>gender</span><span class="string">'=&gt;isset($_POST['</span><span>gender</span><span class="string">'])?$_POST['</span><span>gender</span><span class="string">']:'</span><span class="string">'</span> </span></li><li class="alt"><span><span class="string">);</span> </span></li><li><span> </span></li><li class="alt"><span><span class="string">$arr=array(</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp; &quot;status&quot;=&gt;1,</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp; &quot;url&quot;=&gt;&quot;http://www.liuxinxiu.com/&quot;,</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp; &quot;dataList&quot;=&gt;array(</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;siteId&quot;=&gt;&quot;1&quot;,</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;title&quot;=&gt;urldecode('</span><span>我的博客</span><span class="string">'),</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;images&quot;=&gt;&quot;http://192.168.9.100/upload/2015/06/20/moren.gif&quot;,</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;indexNum&quot;=&gt;10,</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;pageNum&quot;=&gt;&quot;300&quot;,</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;tagNum&quot;=&gt;&quot;20&quot;,</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;linkType&quot;=&gt;&quot;linkTaobao&quot;,</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;publishTime&quot;=&gt;&quot;20:00:00&quot;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)</span> </span></li><li><span><span class="string">);</span> </span></li><li class="alt"><span><span class="string">$arr['</span><span>dataList</span><span class="string">']['</span><span>images</span><span class="string">']=&quot;http://www.liuxinxiu.com/upload/2015/06/20/moren.gif&quot;;</span> </span></li><li><span><span class="string">//print_r($arr);</span> </span></li><li class="alt"><span> </span></li><li><span> </span></li><li class="alt"><span><span class="string">/*************** 定义错误信息 ***************/</span> </span></li><li><span><span class="string">$errStr='</span><span>&#123;</span><span class="string">&quot;status&quot;</span><span>:-1,</span><span class="string">&quot;info&quot;</span><span>:</span><span class="string">&quot;Request Error&quot;</span><span>&#125;</span><span class="string">';</span> </span></li><li class="alt"><span><span class="string">$errJson=json_decode($errStr,true); //json_decode转成了array数组</span> </span></li><li><span><span class="string">//print_r($errJson) //转成了array数组</span> </span></li><li class="alt"><span> </span></li><li><span><span class="string">/************** 获取客户端的Origin域名 **************/</span> </span></li><li class="alt"><span><span class="string">$origin=isset($_SERVER['</span><span>HTTP_ORIGIN</span><span class="string">'])?$_SERVER['</span><span>HTTP_ORIGIN</span><span class="string">']:'</span><span class="string">';</span> </span></li><li><span> </span></li><li class="alt"><span><span class="string">/******** 定义符合规则的域名数组 ********/</span> </span></li><li><span><span class="string">$allow_origin=array(</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;'</span><span>http:</span><span class="comment">//liuxinxiu.com',</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;'http:<span class="comment">//code.liuxinxiu.com',</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;'http:<span class="comment">//test.liuxinxiu.com'</span><span>&nbsp;&nbsp;</span></span></li><li><span>);&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span><span class="comment">/****************** 判断如果有POST过来数据 *********************/</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="keyword">if</span><span>(isset(</span><span class="vars">$_POST</span><span>['name</span><span class="string">'])&amp;&amp;isset($_POST['</span><span>gender</span><span class="string">']))&#123;</span> </span></li><li><span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;/********** 只要是POST请求过来无论合法与否都要正常通信 **********/</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp; header('</span><span>Access-Control-Allow-Methods:POST</span><span class="string">');</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp; header('</span><span>Access-Control-Allow-Headers:x-requested-with,content-type</span><span class="string">');</span> </span></li><li><span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;/******** 匹配客户端域名是否在数组列表中 ******/</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;if(in_array($origin,$allow_origin))&#123;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header('</span><span>Access-Control-Allow-Origin:</span><span class="string">'.$origin);</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$res['</span><span>status</span><span class="string">']=1;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$res['</span><span>getUser</span><span class="string">']=$arr;</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo json_encode($res);</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;else if(!in_array($origin,$allow_origin))&#123;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/******** 如有设置就取设置URL返回头信息 ********/</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(isset($origin_URL))&#123;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header('</span><span>Access-Control-Allow-Origin:</span><span class="string">'.$origin_URL);</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$res['</span><span>status</span><span class="string">']=1;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$res['</span><span>getUser</span><span class="string">']=$arr;</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo encode_json($res);</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//echo json_encode(&quot;中文&quot;, JSON_UNESCAPED_UNICODE);</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/******** 如没有设置URL就返回错误信息&nbsp;&nbsp;********/</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&#123;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header('</span><span>Access-Control-Allow-Origin:</span><span class="string">'.$origin);</span> </span></li><li><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$errJson['</span><span>status</span><span class="string">']=-1;</span> </span></li><li class="alt"><span><span class="string">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$errJson['</span><span>info</span><span class="string">']=&quot;You don'</span><span>t have permission to submit!&quot;;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="func">echo</span><span> encode_json(</span><span class="vars">$errJson</span><span>);&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&#125;&nbsp;&nbsp;</span></li><li><span><span class="comment">/************ 没有所匹配的POST提交数据 ***********/</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="keyword">else</span><span>&#123;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">if</span><span>(</span><span class="vars">$GLOBALS</span><span>[</span><span class="string">'HTTP_RAW_POST_DATA'</span><span>])&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header(<span class="string">'Access-Control-Allow-Origin:'</span><span>.</span><span class="vars">$origin</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="vars">$errJson</span><span>[</span><span class="string">'status'</span><span>]=-1;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="vars">$errJson</span><span>[</span><span class="string">'info'</span><span>]=</span><span class="string">&quot;Syntax error in parameters or arguments.&quot;</span><span>;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="func">echo</span><span> encode_json(</span><span class="vars">$errJson</span><span>);&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="keyword">else</span><span>&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;header(<span class="string">&quot;Content-type: text/html; charset=utf-8&quot;</span><span>);&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="func">echo</span><span> </span><span class="string">'It is forbidden for the URL request!'</span><span>;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>?&gt;&nbsp;&nbsp;</span></li></ol></div><p>PHP数据提交接口地址 (禁止使用GET访问)：<a href="http://code.liuxinxiu.com/php/Interface/server.php" target="_blank"><u><strong><span style="color: rgb(51, 0, 255);">http://code.liuxinxiu.com/php/Interface/server.php</span></strong></u></a></p><p>配合HTML代码如下：</p><div class="codeText"><div class="codeHead">XML/HTML代码</div><ol start="1" class="dp-xml"><li class="alt"><span><span>&lt;!DOCTYPE html</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">html</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">head</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">charset</span><span>=</span><span class="attribute-value">&quot;utf-8&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">http-equiv</span><span>=</span><span class="attribute-value">&quot;X-UA-Compatible&quot;</span><span> </span><span class="attribute">content</span><span>=</span><span class="attribute-value">&quot;IE=edge,chrome=1&quot;</span><span> </span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;viewport&quot;</span><span> </span><span class="attribute">content</span><span>=</span><span class="attribute-value">&quot;width=device-width, initial-scale=1.0, user-scalable=no&quot;</span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">name</span><span>=&quot;format-detection&quot;</span><span class="attribute-value">content</span><span>=&quot;</span><span class="attribute">telephone</span><span>=</span><span class="attribute-value">no</span><span>&quot;</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;apple-mobile-web-app-capable&quot;</span><span> </span><span class="attribute">content</span><span>=</span><span class="attribute-value">&quot;yes&quot;</span><span> </span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">meta</span><span> </span><span class="attribute">name</span><span>=</span><span class="attribute-value">&quot;apple-mobile-web-app-status-bar-style&quot;</span><span> </span><span class="attribute">content</span><span>=</span><span class="attribute-value">&quot;black&quot;</span><span> </span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">style</span><span class="tag">&gt;</span><span>body,html &#123;background:#fff;font-family: &quot;Lucida Grande&quot;,Calibri,Arial;font-size:12pt;color: #333;background: #f8f8f8;text-align:center;&#125;*&#123;margin:0;padding:0;&#125;h1&#123;line-height:1.6em;font-size:24px;text-indent:.5em;padding-top:.6em&#125;i&#123;line-height:2em;font-size:18px;color:#999;&#125;.line&#123;height:10px;border-bottom:1px solid #ccc;font-size:0;overflow:hidden;&#125;</span><span class="tag">&lt;/</span><span class="tag-name">style</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;<span class="tag">&lt;</span><span class="tag-name">title</span><span class="tag">&gt;</span><span>跨域测试</span><span class="tag">&lt;/</span><span class="tag-name">title</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;/</span><span class="tag-name">head</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">body</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">h1</span><span> </span><span class="attribute">id</span><span>=</span><span class="attribute-value">&quot;show&quot;</span><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">h1</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">input</span><span> </span><span class="attribute">type</span><span>=</span><span class="attribute-value">&quot;button&quot;</span><span> </span><span class="attribute">value</span><span>=</span><span class="attribute-value">&quot;Click me&quot;</span><span> </span><span class="attribute">onclick</span><span>=</span><span class="attribute-value">&quot;msg()&quot;</span><span> </span><span class="tag">/&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span><span class="tag">&lt;/</span><span class="tag-name">body</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;</span><span class="tag-name">script</span><span> </span><span class="attribute">src</span><span>=</span><span class="attribute-value">&quot;//code.jquery.com/jquery-1.11.3.min.js&quot;</span><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li><span><span class="tag">&lt;</span><span class="tag-name">script</span><span> </span><span class="attribute">type</span><span>=</span><span class="attribute-value">'text/javascript'</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span>/********** 获取URL参数 **********/&nbsp;&nbsp;</span></li><li><span>function getQueryString(name)&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>var <span class="attribute">reg</span><span>=</span><span class="attribute-value">new</span><span> RegExp(&quot;(^&#124;&amp;)&quot;+name+&quot;=([^&amp;]*)(&amp;&#124;$)&quot;,&quot;i&quot;);&nbsp;&nbsp;</span></span></li><li><span>var <span class="attribute">r</span><span>=</span><span class="attribute-value">window</span><span>.location.search.substr(1).match(reg);&nbsp;&nbsp;</span></span></li><li class="alt"><span>if (r!=null) return unescape(r[2]); return null;&nbsp;&nbsp;</span></li><li><span>&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>/********** 发起Ajax请求 **********/&nbsp;&nbsp;</span></li><li><span>function msg()&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;/******* 动态切换提交数据 *******/&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;if(_origin)&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(_name&amp;&amp;_gender)&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">data</span><span>=&#123;name:_name,gender:_gender,origin:_origin&#125;;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">data</span><span>=&#123;name:&quot;xiaoming&quot;,gender:&quot;male&quot;,origin:_origin&#125;;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;else if(<span class="attribute">_error</span><span>==null)&#123;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">data</span><span>=&#123;name:&quot;xiaoming&quot;,gender:&quot;male&quot;&#125;;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;else if(_error)&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">data</span><span>=&#123;xxx:111&#125;;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;/******* 动态设置提交URL *******/&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;if(_url)&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">urlPath</span><span>=</span><span class="attribute-value">_url</span><span>;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;else&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var <span class="attribute">urlPath</span><span>=</span><span class="attribute-value">'http://code.liuxinxiu.com/php/Interface/server.php'</span><span>;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;$.ajax(&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; type:'post',&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; url:urlPath,&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; data:data,&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cache:false,&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dataType:'json',&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; success:function(data)&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(data.name)&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(&quot;show&quot;)<span class="attribute">.innerHTML</span><span>=</span><span class="attribute-value">data</span><span>.name+' '+data.gender;&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#125;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if(data.status!=1)&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(&quot;show&quot;)<span class="attribute">.innerHTML</span><span>=</span><span class="attribute-value">data</span><span>.info;&nbsp;&nbsp;</span></span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#125;,&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; error:function()&#123;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; console.log(&quot;请求错误//&quot;)&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#125;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&#125;);&nbsp;&nbsp;</span></li><li class="alt"><span>&#125;;&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li class="alt"><span>/***********************************************************************************************&nbsp;&nbsp;</span></li><li><span>$.post(&quot;http://www.server.com/server.php&quot;,&#123;name:&quot;fdipzone&quot;,gender:&quot;male&quot;&#125;).done(function(data)&#123;&nbsp;&nbsp;</span></li><li class="alt"><span>&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById(&quot;show&quot;)<span class="attribute">.innerHTML</span><span>=</span><span class="attribute-value">data</span><span>.name+' '+data.gender;&nbsp;&nbsp;</span></span></li><li><span>&#125;);&nbsp;&nbsp;</span></li><li class="alt"><span>**********************************************************************************************/&nbsp;&nbsp;</span></li><li><span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li><li class="alt"><span><span class="tag">&lt;/</span><span class="tag-name">html</span><span class="tag">&gt;</span><span>&nbsp;&nbsp;</span></span></li></ol></div><p>HTML访问地址 (测试跨域) ==&gt; <a href="http://test1.liuxinxiu.com/php/Interface/html/server.html?n=php" target="_blank"><u><strong><span style="color: rgb(51, 0, 255);">http://test1.liuxinxiu.com/php/Interface/html/server.html?n=php</span></strong></u></a></p><p>HTML访问地址 (非法参数) ==&gt; <a href="http://test1.liuxinxiu.com/php/Interface/html/server.html?error=php" target="_blank"><u><strong><span style="color: rgb(51, 0, 255);">http://test1.liuxinxiu.com/php/Interface/html/server.html?error=php</span></strong></u></a></p><br/>Tags - <a href="http://liuxinxiu.com:80/tags/cors/" rel="tag">cors</a> , <a href="http://liuxinxiu.com:80/tags/php/" rel="tag">php</a>
]]>
</description>
</item><item>
<link>http://liuxinxiu.com:80/CORS_PHP/#blogcomment</link>
<title><![CDATA[[评论] CORS跨域资源共享PHP版本实现]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://liuxinxiu.com:80/CORS_PHP/#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>