gpt4 book ai didi

php - 使用 php 的反向 Ajax 实现

转载 作者:可可西里 更新时间:2023-11-01 13:28:59 26 4
gpt4 key购买 nike

我希望在使用 PHP 和 jquery 的应用程序中实现反向 ajax。我用谷歌搜索了一下,找到了 XAJA,但这似乎是一个付费应用程序。是否有可用的开源应用程序或是否有人实现了它?

一些指示或提示会很有帮助。

提前致谢。

最佳答案

我知道两种类型的反向 AJAX:
1- 轮询
2- 推

我认为轮询更容易实现,你只需让你的 javascript 在每个时间间隔向服务器发出定期请求,当服务器有一些数据时它就会响应。它类似于 ping,有些人称它为心跳,但它是解决此问题的非常明显的解决方案。但是,它可能很容易使服务器过载。

编辑 简单轮询示例代码:
服务器端:

<?php
//pong.php php isn't my main thing but tried my best!
$obj = new WhatsNew();
$out = "";
if ($obj->getGotNew()){
$types = new array();
foreach ($obj->newStuff() as $type)
{
$new = array('type' => $type);
$types[] = $new;
}

$out = json_encode($types);
}
else{
$out = json_encode(array('nothingNew' => true));
}


客户端:

function ping(){
$.ajax(
{

url : "pong.php",
success : function (data){
data = JSON.parse(data),
if (data['nothingNew'])
return;
for(var i in data){
var type = data[i]['type'];
if (type && incomingDataHandlers[type]){
incomingDataHandlers[type]();
}
}


});
}
incomingDataHandlers = {
comments: function () {
$.ajax({
url: "getComments.php",
method: "GET",
data: getNewCommentRequsetData() // pass data to the server;
success : function (data){
//do something with your new comments
}
});
},
message: function (){
$.ajax({
url: "getMessages.php",
method: "GET",
data: getNewMessageRequestData() // pass data to the server;
success : function (data){
//do something with your new messages
}
});
}
}
$(docment).ready(function () {
setInterval(ping, 1000);
})

关于php - 使用 php 的反向 Ajax 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4568524/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com