首页 > 代码库 > chrome提示错误:CAUTION:Provisional headers are shown 解决办法

chrome提示错误:CAUTION:Provisional headers are shown 解决办法

最近作微信的开发因为前台和后台不再一个地方办公,前台也不会写php和ajax所以就造成了一种我些后台服务,她写前台调用的模式,让她的ajax直接访问我的服务端口,我提供给她数据,类似于写接口一样,于是问题出来了.前台ajax访问请求总是执行error.事例代码如下

前台测试代码index.html:

<!DOCOMENT html>
<html>
	<head>
		<title>测试</title>
		<script type="text/javascript" src=http://www.mamicode.com/"http://code.jquery.com/jquery-1.11.1.min.js"></script>>
后台模拟数据:

<?php
	echo "hello";
?>

后台显示:

前台在chrome中单击ajax按钮之后的显示(明显执行了error 注意chrome中的黄色提示):


在firefox中的提示:

愿意为项目中的错误是因为前台不擅长ajax造成的,但是自己也写了一个,放在了桌面,没有和apache解析php的目录放在一起,结果也是出现上边的错误,大家可以从firefox中看到提示,我们感觉firefox提示发现原因,因为js跨域访问的问题,我们要允许js的跨域请求,不知道这个说法是不是正确,总之我们要让数据能够正确的被ajax调用.经过修改php程序如下:

<?php
	echo header("Access-Control-Allow-Origin:*");
	echo "hello";
?>

此时我们再看前台:

很明显,已经得到了数据,我们看看他们头信息

返回值:

至此我们的数据可以通过ajax获取到了,关键代码

echo header("Access-Control-Allow-Origin:*");
这样我们就可以跨域访问了,具体怎么理解跨域访问,我的理解就是,前台和后台不再一个域的访问,在这里怎么理解域,我的理解就是一个统一的目录.这里面写一点感悟,大家如果遇到类似于这种问题的话,还存在一个问题,就是我怎么能确定ajax是不是真的没有访问到数据那,这时候我们可以在php页面加入一个写入功能,每当有访问的时候写入一个日志文件,通过查看日志文件确定链接是否接受得到,这也是我作微信开发的过程中总结出来的,源程序要放到服务器,并不能像本地一样可以方便的调试信息,所以我们很有必要对一些东西写入日志文件,来判断程序是否正常.一点心得分享给大家.