PHP - 如何实现跨域

简介:

因工作需要,客户端软件的一些界面用HTML+CSS+Javascript实现,这些文件放在客户端本地,以本地文件形式加载,但是有些情况下,需要连接服务器取得一些信息,如果不做任何处理,则请求失败,返回的信息如下:

 

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.

 

这是因为浏览器跨域策略起作用,阻止了跨域的请求。看看HTTP请求过程就知道。第一次请求后端时候,浏览器意识到是访问一个跨与资源,没有直接发送GET请求获取数据,而是发送了一个OPTIONS请求询问是否可以访问该资源。我们称之为Preflight请求,默认因为同源策略的存在,该请求返回的Header中没有'Access-Control-Allow-Origin'属性,所以访问失败。

如果要实现跨域,关键在于服务器,客户端的代码按照正常的方式编写即可。对于服务器,只需要在收到OPTIONS请求的地方,返回的头信息中增加该属性即可,代码如下:

 

header("Access-Control-Allow-Origin: *");






本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/1784123,如需转载请自行联系原作者
目录
相关文章
|
12月前
|
安全 API PHP
PHP中实现CORS跨域资源共享的方法
通过这种方式,你可以在PHP应用中灵活地实现CORS,以支持跨域Web应用的需求。
775 15
|
前端开发 API PHP
漏刻有时开放平台数据接口php允许ajax跨域的解决方案
漏刻有时开放平台数据接口php允许ajax跨域的解决方案
217 0
|
JSON 前端开发 JavaScript
php函数file_get_contents应对百度天气接口CORB跨域解决方案
php函数file_get_contents应对百度天气接口CORB跨域解决方案
281 0
|
PHP
PHP解决跨域问题
PHP解决跨域问题
277 0
|
前端开发 JavaScript PHP
跨域的本质-引入外部 php 文件| 学习笔记
快速学习跨域的本质-引入外部 php 文件。
|
前端开发 PHP
php跨域
php跨域
274 0
|
JSON 前端开发 PHP
php跨域的几种方式
PHP实现跨域的几种形式 1、JSONP(JSON with padding)原理 利用html里面script标签可以加载其他域下的js这一特性,使用script src的形式来获取其他域下的数据,但是,因为是通过标签引入的,所以,会将请求到的JSON格式的数据作为js去运行处理,显然这样运行是不行的。
1088 0