我有一个 php 脚本,它以 JSON 格式获取特定用户的最新推文。JSON 被解析为一个 AJAX 函数,该函数在页面上的一个 ID 中显示最新的推文。每 x 秒设置一个计时器来执行上述操作,检索最新的推文,而无需用户刷新页面。这完美地工作。
我现在正在尝试创建一个通知功能,当有新推文要显示时显示通知。在检索到的 JSON 中,每条推文都有一个名为“id_string”的唯一 ID。我想要做的是以某种方式存储生成的 id_string 的值,然后每次请求检索新推文时,检查新的 'id_string' 与存储的'id_string',如果不同则显示通知。
关于如何去做这件事的任何想法都会很棒?!我已经研究过本地存储,但我对此不是很熟悉,据我所知,您无法根据本地存储中的其他字符串检查字符串。
这是帮助解释我的问题的必要代码:
PHP 向 twitter 发出请求并生成 JSON 格式的输出 (tweets.php):
require_once('config/FrameFunctions.php');
$output = array();
foreach ($tweeters as $i => $tweeter){
$theTweeter = new Tweeter($tweeter, $tmhOAuth);
$allinfo = $theTweeter->getTweets();
$output[$i] = $allinfo;
}
header("Content-type: application/json");
echo json_encode($output);
每隔 x 秒发出请求并生成客户端输出的 javascript:
$(document).ready(function() {
$('.fancybox').fancybox();
/*
* call ajax function and update latest
*/
var refreshTweets = function() {
console.log("updating..");
$.ajax({url:"tweets.php",success:function(result){
tweets = eval(result);
for(i=0;i<tweets.length;i++){
$("#latesttweet"+(i+1)).html(
tweets[i][0].user.name + ": " + tweets[i][0].text
);
}
}});
}
refreshTweets();
//set the time in milliseconds here for each refresh
setInterval(refreshTweets , 30000); //Interval
});