直接用ajax跨域请求返回数据因为不是https协议网站所以返回的数据或资源所以会被拦截阻挡
写一个API做中转数据,写一个接口,利用ajax去请求接口,再有接口模拟请求目标站获取数据到API接口,然后再返回数据。
前端ajax代码
var zh='admin' ;
var key='123456';
var url='http:****.com';
$.ajax({
type: "Get",
url:"getapi.php",
dataType: "text",
data: {userName:zh,userPwd:key,url:url},
success: function (data) {
//判断结果
if (data == "true") {
//删除禁用属性
$("#btn_sumbit").removeAttr("disabled");
//请求结果
$("#btn_sumbit").click();
} else {
//请求结果
alert(data);
}
}
});
复制代码
php代码
header("content-type:text/html;charset=utf-8"); //设置编码
$data['userName']=$_GET['userName'];
$data['userPwd']=$_GET['userPwd'];
// var_dump($data);
$url=$_GET['url'];//B站请求地址
$postdata = http_build_query($data);
$opts = array(
'http'=>array(
'method'=>"GET",
'timeout'=>60,
)
);
$context = stream_context_create($opts);
$result = file_get_contents($url."?".$postdata, false, $context);
echo $result;
?> 复制代码