这篇文章主要介绍了ajax实现远程通信的相关资料,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了ajax实现远程通信,供大家参考,具体内容如下
第一个文件:html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax解决跨域问题</title>
<script src="jquery-3.0.0.min.js" type="text/javascript"></script>
</head>
<body>
<script>
$.ajax({
type:"POST",
url:"postDemo.php",
data:{
"url":"http://192.168.4.101:90/PHPStudy4/server.php",
"username":"admin",
"password":"admin",
},success:function(data){
var result=eval("("+data+")");
console.log(result);
}
})
</script>
</body>
</html>
第二个文件:服务器端处理数据
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2016-7-21
* Time: 10:12
*/
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// echo json_encode(array("111"=>"112"));
if (isset($_POST["url"]) && isset($_POST["username"]) && isset($_POST["password"])) {
$result = postDemo($_POST["url"], array("username" => $_POST["username"], "password" => $_POST["password"]));
echo $result;
} else {
echo json_encode(array("msg2" => "!!!!!!!!!!!!!!!!!!!!!error!!!!!2"));
}
} else {
echo json_encode(array("msg" => "error!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"));
}
function postDemo($url, $data)
{
$query = http_build_query($data);
$options = array(
"http" => array(
"header" => "Content-type: application/x-www-form-urlencoded\r\n" .
"Content-length:" . strlen($query) . "\r\n" .
"User-Agent:MyAgent/1.0/r/n",
"method" => "POST",
"content" => $query
)
);
$content = stream_context_create($options);
$result = file_get_contents($url, false, $content);
return $result;
}
//echo postDemo("http://192.168.4.101:90/PHPStudy4/server.php",array("username"=>"admin","password"=>"admin"));
其中"url":"http://192.168.4.101:90/PHPStudy4/server.php",这个url就是我们向远端的访问地址.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。 |