首页 >后端开发 >php教程 >php解决跨域问题

php解决跨域问题

angryTom
angryTom原创
2019-08-23 09:05:525331浏览

php解决跨域问题

  在前端里面,解决跨域的时候总显得那么的恶心,什么jsonp啊,ajax啊,CORS啊什么的,总觉得是在钻空子进行跨域,其实在PHP文件里面只需要加一段代码就可以跨域了,前端你该怎么写还是怎么写,post,get随便用。

推荐教程:PHP视频教程

PHP解决跨域只需要在PHP文件中加入三个请求头就行了。

header("Access-Control-Allow-Origin:*"); // 制定允许其他域名访问

header('Access-Control-Allow-Methods:POST'); // 响应类型

header('Access-Control-Allow-Headers:x-requested-with, content-type'); // 响应头设置

<?php
// 制定允许其他域名访问
header("Access-Control-Allow-Origin:*");
// 响应类型
header(&#39;Access-Control-Allow-Methods:POST&#39;);
// 响应头设置
header(&#39;Access-Control-Allow-Headers:x-requested-with, content-type&#39;);
 
//$callback = isset($_REQUEST[&#39;callback&#39;]) ? trim($_REQUEST[&#39;callback&#39;]) : &#39;&#39;; //jsonp回调参数,必需
function getKey($key,$default=""){
    return trim(isset($_REQUEST[$key])?$_REQUEST[$key]:$default);
}
$id = getKey("id");
$conn = mysqli_connect("localhost","root","","test") or die("连接失败");
$conn->query("set names utf8");
$sql = "select * from data where ".$id." is not null";
$result = $conn->query($sql);
$arr = [];
while($row=$result->fetch_assoc()){
    array_push($arr,json_encode($row));
}
$json = json_encode($arr);  //json 数据
print_r($json);

以上是php解决跨域问题的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn