我正在使用Twitter API来显示用户的状态。但是,在某些情况下(比如今天),Twitter会下降并且带走所有的API。因此,我的应用程序失败并持续显示加载屏幕。检查Twitter API是否关闭(或整个网站一般都关闭)
我想知道是否有快速的方法(使用PHP或JS)来查询Twitter并查看它(和API)是否启动。我认为这可能是某种简单的回应。
由于提前, 菲尔
我正在使用Twitter API来显示用户的状态。但是,在某些情况下(比如今天),Twitter会下降并且带走所有的API。因此,我的应用程序失败并持续显示加载屏幕。检查Twitter API是否关闭(或整个网站一般都关闭)
我想知道是否有快速的方法(使用PHP或JS)来查询Twitter并查看它(和API)是否启动。我认为这可能是某种简单的回应。
由于提前, 菲尔
要求http://api.twitter.com/1/help/test.xml
或test.json
。检查以确保您获得200个http响应代码。
如果您请求的XML响应应该是:
<ok>true</ok>
的JSON的反应应该是:
"ok"
function visit($url) {
$agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";$ch=curl_init();
curl_setopt ($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch,CURLOPT_VERBOSE,false);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$page=curl_exec($ch);
//echo curl_error($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if($httpcode>=200 && $httpcode<300)
return true;
else
return false;
}
// Examples
if(visit("http://www.twitter.com"))
echo "Website OK"."n"; // site is online
else
echo "Website DOWN"; // site is offline/show no response
我希望这可以帮助你。
JSONP!
你可以有一些像这样的功能,在头部或包括下面的下一个脚本标记之前宣称:
var isTwitterWorking = false;
function testTwitter(status) {
if (status === "ok") {
isTwitterWorking = true;
}
}
然后
<script src="http://api.twitter.com/1/help/test.json?callback=testTwitter"></script>
Demo(可能需要一段时间,Twitter的API在这里似乎很慢)
非常感谢,伟大的作品 – psarid 2011-05-13 19:29:08