快捷搜索:   nginx

php输出内容使用Access-Control-Allow-Origin响应头解决跨域请求

我们在做一个项目,使用PHP生成JSON并供第三方站点调用,调用的文件名是JSON.PHP,这个文件输出的内容是JSON格式的,传统的跨域请求解决方案,无非就是jsonp和iframe或者直接第三方网站用CURL读取,但是实际如果能让第三方网站直接能跨域引用资源,将可以节省很多资源出来。

在新版的W3C规范里面,已经考虑到这点,只要在服务器响应客户端的时候,带上Access-Control-Allow-Origin头信息就能控制跨站。

有以下两种设置方式:

泛域名: (* 允许所有域名的脚本访问该资源。)
Access-Control-Allow-Origin: *        

特定域名: ( http://www.bnxb.com: 允许特定的域名访问。)
Access-Control-Allow-Origin: http://www.bnxb.com  


我们只需要在PHP添加响应头信息:(表示支持所有域名访问)

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



语法参考下列PHP 语法设置:

// 指定允许其他域名访问  

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

// 响应类型  

header('Access-Control-Allow-Methods:*');  

// 响应头设置  

header('Access-Control-Allow-Headers:x-requested-with,content-type');  


顶(6)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论